fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff", 0x20024, 0xfffe0}, {&(0x7f00000104a0)="00000000000000000000000000000000000000000000000000000000000002", 0x1f, 0x4045e0}], 0x2, &(0x7f0000003580)=ANY=[], 0x1) ioctl$sock_SIOCGIFVLAN_ADD_VLAN_CMD(0xffffffffffffffff, 0x8982, &(0x7f0000002380)={0x0, 'veth1_to_batadv\x00', {0x4}, 0x4}) r2 = socket$inet_tcp(0x2, 0x1, 0x0) setsockopt$ARPT_SO_SET_REPLACE(r2, 0x0, 0x60, &(0x7f0000000440)={'filter\x00', 0x11, 0x4, 0x3f0, 0x0, 0x0, 0x200, 0x308, 0x308, 0x308, 0x7fffffe, 0x0, {[{{@arp={@remote, @broadcast, 0x0, 0x0, 0x0, 0x0, {@mac=@link_local={0x2}}, {@mac}, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 'bridge0\x00', 'erspan0\x00'}, 0xc0, 0x100}, @unspec=@RATEEST={0x40, 'RATEEST\x00', 0x0, {'syz1\x00'}}}, {{@uncond, 0xc0, 0x100}, @unspec=@RATEEST={0x40, 'RATEEST\x00', 0x0, {'syz0\x00'}}}, {{@arp={@multicast1, @initdev={0xac, 0x1e, 0x0, 0x0}, 0x0, 0x0, 0x0, 0x0, {@mac=@link_local}, {@mac=@multicast}, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 'veth0_vlan\x00', 'ipvlan1\x00'}, 0xc0, 0x108}, @unspec=@IDLETIMER={0x48, 'IDLETIMER\x00', 0x0, {0x0, 'syz0\x00'}}}], {{'\x00', 0xc0, 0xe8}, {0x28, '\x00', 0x2}}}}, 0x440) setsockopt$sock_int(r2, 0x1, 0x5f, &(0x7f00000023c0)=0x3, 0x4) setsockopt$EBT_SO_SET_COUNTERS(r0, 0x0, 0x81, &(0x7f0000002440)={'nat\x00', 0x0, 0x0, 0x0, [0x200, 0x100000000, 0x2, 0x7, 0x1, 0x7fffffffffffffff], 0x7, &(0x7f0000002400)=[{}, {}, {}], 0x0, [{}, {}, {}, {}, {}, {}, {}]}, 0xe8) r3 = openat(0xffffffffffffff9c, &(0x7f0000000180)='./cgroup.cpu/cpuset.cpus\x00', 0x0, 0x0) open_by_handle_at(r3, &(0x7f0000000140)=@ceph_nfs_confh={0x10, 0x2, {0x3}}, 0x0) r4 = socket$qrtr(0x2a, 0x2, 0x0) sendmsg$kcm(r3, &(0x7f0000002bc0)={&(0x7f0000002540)=@pppol2tpv3={0x18, 0x1, {0x0, r4, {0x2, 0x4e21, @multicast2}, 0x1, 0x1, 0x3, 0x1}}, 0x80, &(0x7f0000002940)=[{&(0x7f00000025c0)="067f80bd447a9c7175dd559077e0e7f8f163508d05339b42679e7885baef8d393c87ca7f5690a4289f7ba75b85fa9c70147e8fac24a8a975747df81314b1179ad94e3a1b0298254edc9b820c427df1234ca934adb25866cdce591e20f145677c7ce7909d7b3ade0bbcaf4c36220f26d4a8d9b46eb9b0f090ebb6c622bae3549feebec9d50d48a75a60aedbc3489a37b8246cedf0e92782a846f598c421", 0x9d}, {&(0x7f0000002680)="53f36f554a756df8f5b1703eae6e55a2d6ab7b71b09ced14dd38b54557bb9dd3352f0cb6017b12334cd20fc3f4c8b244f288a880c557b6d54ffecd26ce986f8e0a97f0934f4a5f7c032783230769e13a289676015d50628835e8e53a5c3a733c180b45c64d60ceeb0bce24f5ea0fac0f543230508ba589486efd54d1f87acb3fd637a551d53e27708ab022caa3f19a77bf39d4ea8df2134672c4b3dc0748bb1fad51492b7f6efe26920258a7349950f83592fe60d1e9e7fc7ea99965a2f9c01fa81ba84dc8cb35c6f79b953f5e4003f83dde9ecc2b3c1ee14c61d53f2edaca9d2e4a7a3869232fd4e2fd5fcd61dc", 0xee}, {&(0x7f0000002780)="99af47bc51bcb340326672a45dcb4f8864a292a833cdc4c177b05e1e437e8e3e020335e3134f8fbcf67ff2b49365fd8b43108fda29fad560fcde419836beafadd29b180eb2d7e3b9852470c2e90232ea86732f95ec7cfbcd00a4279cb9d09f7addd4b0298ba839ba694f3534e7be51ed4dffa921524785792b1c92447a087d1450a065b713707b4b7aa88ddf064c4e50b8dd", 0x92}, {&(0x7f0000002840)="c9504101d4662b8c50d6a808fb1f4d582b75fd639c331295854ade00456d3006acaadb517ae3e0c1a15bb0d94b4cb50fd218d8fc1e2739f8375678b54f43da6e5b5cdad339114589f1b282f9a9ae8164", 0x50}, {&(0x7f00000028c0)="70214f2feb79407f075df55dd065bd5cf3bd5b39ca4adf1cbef79ee01398a351db10737f7976deb3ccb4b1dfe29f994ec33ea9f0958117f8bc1254eb0e009b1edf98a2a485bffa75cea07f6fc21f0c3f092da101db670dd740b2c940cbb9e68c271e9824", 0x64}], 0x5, &(0x7f00000029c0)=ANY=[@ANYBLOB="480000000000000000000000050000009194486c0afaa2269ed7765d571894c3f165c5c578caa82392e9321e2696849deb2ba7fea48a8a95fd68bfb0450e6724bd2f70734de14e3d700000000000000001000000080000003d9d55924a3fd7f939a2a68626184e0f28a2fe9b1b5a6e999b4a69acd52f9d8086a49cf4cfade15502a2be938fe293c18bd71d54fdba66f69f99ad83fadee6fcf20936e5078b89a806dbe864b6ca5a2ea5328b11c9c7e9274b7eec000000000050000000000000000000000007000000c963387954f1eae77116d78210cfc5a3f5eaf83165e9770dde392aa6aa83450cd072ac70b12c869bc7de1e42e828e1a2b0b52a33a10adb2020d4f837b31ff7e28000000000000000a5b35deb3c05000014485c7ccc78965851781bec6fa09ce3ebf48075295267461dbe64f91d694d6af807eccad5492aa1c4e308f658e626961f1632752641946b1d5c91098816d90df89ada40e4c8209c7009aa0b91fc0f47391453b8acff4171cb008657c435c54a28cf8e2382000060000000000000000f01000001000000c4d612e68f99ec96ba8b5b45bdfbe1fe23f50519080daf53d05225d1110a065b56ad1dff46588f8ad20f8333584366f7d62bb2b4f8cc2f94d2bedbe872d0e54798d6181ed2fbeaba4d5900"/488], 0x1e8}, 0x400c1) ioctl$sock_ipv6_tunnel_SIOCCHG6RD(r4, 0x89fb, &(0x7f0000002c40)={'sit0\x00', &(0x7f0000002c00)={@remote, @dev={0xac, 0x14, 0x14, 0x1c}, 0x1b, 0x3}}) 00:02:49 executing program 0: r0 = openat(0xffffffffffffffff, &(0x7f0000000540)='/proc/self/exe\x00', 0x0, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x2800004, 0x12, r0, 0x0) (async) r1 = socket$inet6_sctp(0xa, 0x1, 0x84) sendto$inet6(r1, &(0x7f0000000000)="0d041a4c0e69971ef323f80082082eabb33074f8075821d36f2d1696a35f21289fe32047b83ecb924f72803eaf42354706782b4d5d5d988e5b4121777a8e089c8c8f17775fec6ace6b73ad71b0ad3bc0a6a6cb4a78942ffd5059201f60860a7b9f479d9260965e2369aca33136623efaec545d2988ddf8c3294095d213ae035eea3f06baca51b1882519adc3516c6df0e214b07fa21fb9df4fef9f6c21125bd7cbb4215e265c5f973e652746cfc09919f7969d30a042ddfdb66a1af6a8fd", 0xbe, 0x14, 0x0, 0x0) getsockopt$inet_sctp6_SCTP_ASSOCINFO(r1, 0x84, 0x1, &(0x7f0000000140), &(0x7f0000000180)=0x14) [ 169.456347][ T4122] x_tables: unsorted underflow at hook 4 00:02:49 executing program 1: bpf$PROG_LOAD_XDP(0x5, &(0x7f0000000040)={0x4, 0x4, &(0x7f0000000000)=@framed={{}, [@kfunc={0x85, 0x0, 0x2, 0x0, 0x3}]}, &(0x7f0000000380)='GPL\x00', 0xffffffff, 0x0, 0x0, 0x0, 0x18, '\x00', 0x0, 0x25, 0xffffffffffffffff, 0x8, 0x0, 0x0, 0x10, 0x0}, 0x80) bpf$PROG_LOAD_XDP(0x5, &(0x7f0000000040)={0x4, 0x4, &(0x7f0000000000)=@framed={{}, [@kfunc={0x85, 0x0, 0x2, 0x0, 0x3}]}, &(0x7f0000000380)='GPL\x00', 0xffffffff, 0x0, 0x0, 0x0, 0x18, '\x00', 0x0, 0x25, 0xffffffffffffffff, 0x8, 0x0, 0x0, 0x10, 0x0}, 0x80) (async) [ 169.485831][ T4122] loop2: detected capacity change from 0 to 8226 [ 169.513698][ T4122] ntfs3: loop2: Failed to load $BadClus. 00:02:49 executing program 0: r0 = openat(0xffffffffffffffff, &(0x7f0000000540)='/proc/self/exe\x00', 0x0, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x2800004, 0x12, r0, 0x0) (async) r1 = socket$inet6_sctp(0xa, 0x1, 0x84) sendto$inet6(r1, &(0x7f0000000000)="0d041a4c0e69971ef323f80082082eabb33074f8075821d36f2d1696a35f21289fe32047b83ecb924f72803eaf42354706782b4d5d5d988e5b4121777a8e089c8c8f17775fec6ace6b73ad71b0ad3bc0a6a6cb4a78942ffd5059201f60860a7b9f479d9260965e2369aca33136623efaec545d2988ddf8c3294095d213ae035eea3f06baca51b1882519adc3516c6df0e214b07fa21fb9df4fef9f6c21125bd7cbb4215e265c5f973e652746cfc09919f7969d30a042ddfdb66a1af6a8fd", 0xbe, 0x14, 0x0, 0x0) getsockopt$inet_sctp6_SCTP_ASSOCINFO(r1, 0x84, 0x1, &(0x7f0000000140), &(0x7f0000000180)=0x14) 00:02:49 executing program 1: r0 = syz_clone(0x20000000, 0x0, 0x0, 0x0, 0x0, 0x0) sched_setparam(r0, &(0x7f0000000000)=0x10001) [ 169.557097][ T4122] x_tables: unsorted underflow at hook 4 00:02:49 executing program 1: r0 = syz_clone(0x20000000, 0x0, 0x0, 0x0, 0x0, 0x0) sched_setparam(r0, &(0x7f0000000000)=0x10001) 00:02:49 executing program 3: r0 = openat$snapshot(0xffffffffffffff9c, &(0x7f0000000000), 0x1, 0x0) ioctl$SNAPSHOT_S2RAM(r0, 0x330b) r1 = socket$inet_tcp(0x2, 0x1, 0x0) setsockopt$ARPT_SO_SET_REPLACE(r1, 0x0, 0x60, &(0x7f0000000440)={'filter\x00', 0x11, 0x4, 0x3f0, 0x0, 0x0, 0x200, 0x308, 0x308, 0x308, 0x7fffffe, 0x0, {[{{@arp={@remote, @broadcast, 0x0, 0x0, 0x0, 0x0, {@mac=@link_local={0x2}}, {@mac}, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 'bridge0\x00', 'erspan0\x00'}, 0xc0, 0x100}, @unspec=@RATEEST={0x40, 'RATEEST\x00', 0x0, {'syz1\x00'}}}, {{@uncond, 0xc0, 0x100}, @unspec=@RATEEST={0x40, 'RATEEST\x00', 0x0, {'syz0\x00'}}}, {{@arp={@multicast1, @initdev={0xac, 0x1e, 0x0, 0x0}, 0x0, 0x0, 0x0, 0x0, {@mac=@link_local}, {@mac=@multicast}, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 'veth0_vlan\x00', 'ipvlan1\x00'}, 0xc0, 0x108}, @unspec=@IDLETIMER={0x48, 'IDLETIMER\x00', 0x0, {0x0, 'syz0\x00'}}}], {{'\x00', 0xc0, 0xe8}, {0x28, '\x00', 0x2}}}}, 0x440) read$snapshot(r0, &(0x7f0000000140)=""/164, 0xa4) ioctl$NS_GET_OWNER_UID(0xffffffffffffffff, 0xb704, &(0x7f0000000080)=0x0) setsockopt$IPT_SO_SET_REPLACE(r1, 0x0, 0x40, &(0x7f0000000880)=@filter={'filter\x00', 0xe, 0x4, 0x358, 0xffffffff, 0x1f8, 0x0, 0xd8, 0xffffffff, 0xffffffff, 0x2c0, 0x2c0, 0x2c0, 0xffffffff, 0x4, &(0x7f0000000100), {[{{@uncond, 0x0, 0xb0, 0xd8, 0x0, {}, [@common=@set={{0x40}, {{0x1, [0x6, 0xf, 0x1, 0x2, 0x4, 0x1], 0x6}}}]}, @common=@inet=@SYNPROXY={0x28, 'SYNPROXY\x00', 0x0, {0x2, 0x80, 0xf747}}}, {{@ip={@multicast1, @broadcast, 0xffffffff, 0xff, 'batadv_slave_0\x00', 'xfrm0\x00', {}, {}, 0x84, 0x2, 0x1c}, 0x0, 0xc0, 0x120, 0x0, {}, [@common=@socket0={{0x20}}, @common=@addrtype={{0x30}, {0x100, 0x40}}]}, @common=@SET={0x60, 'SET\x00', 0x0, {{0x0, [0x6, 0x4, 0x0, 0x0, 0x1, 0x4], 0x1}, {0x3, [0x0, 0x3, 0x0, 0x4, 0x5, 0x2], 0x0, 0x4}}}}, {{@ip={@empty, @local, 0xff, 0x0, 'veth0_to_hsr\x00', 'dummy0\x00', {0xff}, {}, 0x29, 0x3, 0x40}, 0x0, 0xa0, 0xc8, 0x0, {}, [@common=@addrtype={{0x30}, {0x121, 0x80, 0x1}}]}, @common=@unspec=@CLASSIFY={0x28, 'CLASSIFY\x00', 0x0, {0x6}}}], {{'\x00', 0x0, 0x70, 0x98}, {0x28}}}}, 0x3b8) r3 = openat$procfs(0xffffffffffffff9c, &(0x7f0000000200)='/proc/asound/seq/clients\x00', 0x0, 0x0) setsockopt$IP_VS_SO_SET_DELDEST(r3, 0x0, 0x488, &(0x7f0000000240)={{0x29, @empty, 0x4e21, 0x2, 'sh\x00', 0x18, 0x60a, 0x23}, {@multicast1, 0x4e22, 0x10000, 0x8, 0x80000000, 0x3}}, 0x44) fsetxattr$security_capability(r1, &(0x7f0000000040), &(0x7f00000000c0)=@v3={0x3000000, [{0x4, 0x7fffffff}, {0x0, 0x928}], r2}, 0x18, 0x3) [ 169.642157][ T4138] random: crng reseeded on system resumption [ 169.678822][ T4138] x_tables: unsorted underflow at hook 4 [ 169.680530][ T4138] x_tables: duplicate underflow at hook 2 00:02:49 executing program 4: r0 = socket$netlink(0x10, 0x3, 0x4) r1 = socket(0x10, 0x803, 0x0) sendmsg$nl_route_sched(r1, &(0x7f0000000a00)={0x0, 0x0, &(0x7f00000009c0)={0x0, 0x68}}, 0x0) getsockname$packet(r1, &(0x7f0000000200)={0x11, 0x0, 0x0, 0x1, 0x0, 0x6, @broadcast}, &(0x7f00000000c0)=0x14) sendmsg$nl_route(r0, &(0x7f0000000040)={0x0, 0x0, &(0x7f0000000000)={&(0x7f0000000140)=ANY=[@ANYRES16=r2, @ANYRES32=r2, @ANYBLOB="0000000000000000280012000900010076657468"], 0x48}}, 0x0) sendmsg$nl_route_sched(0xffffffffffffffff, &(0x7f00000002c0)={0x0, 0x0, &(0x7f0000000280)={&(0x7f0000000340)=ANY=[@ANYBLOB="3000000024000b0f00"/20, @ANYRES32=r2, @ANYBLOB="cde20000ffffffff00007680337b0100696e6772657373007efac025c34690194347a44b9071a4fb0d101f898983b5c0aa43aa2c1cbec392e31a67a65a820cd8b8216d3bd2d6000000003278a0117b1811038e85367138941a"], 0x30}}, 0x0) ioctl$SIOCGETVIFCNT(0xffffffffffffffff, 0x89e0, &(0x7f0000000080)={0xffffffffffffffff}) r3 = socket$netlink(0x10, 0x3, 0x0) r4 = socket(0x10, 0x803, 0x0) sendmsg$IPSET_CMD_LIST(r4, &(0x7f00000005c0)={0x0, 0x0, &(0x7f0000000580)={0x0, 0x14}}, 0x0) getsockname$packet(r4, &(0x7f0000000380)={0x11, 0x0, 0x0, 0x1, 0x0, 0x6, @broadcast}, &(0x7f0000000200)=0x14) sendmsg$nl_route(r3, &(0x7f0000000040)={0x0, 0x0, &(0x7f0000000000)={&(0x7f00000008c0)=ANY=[@ANYBLOB="480000001000050700"/20, @ANYRES32=r5, @ANYBLOB="0000000000000000280012000c00010076657468"], 0x48}}, 0x0) sendmsg$nl_route_sched(0xffffffffffffffff, &(0x7f0000000040)={0x0, 0x0, &(0x7f0000000100)={&(0x7f0000000080)=ANY=[@ANYBLOB="9c5e000900000000e10c0400003aff", @ANYRES32=r5, @ANYBLOB="00000000f1ffffff000000000b000100636c736163740000"], 0x30}}, 0x0) sendmsg$nl_route_sched(0xffffffffffffffff, &(0x7f0000000280)={0x0, 0x0, &(0x7f0000000240)={&(0x7f00000003c0)=@delchain={0x24, 0x29, 0xd3d, 0x0, 0x0, {0x0, 0x0, 0x0, r5, {0xfff2, 0xffff}}}, 0x24}}, 0x0) sendmsg$nl_route_sched(0xffffffffffffffff, &(0x7f0000000600)={&(0x7f0000000540)={0x10, 0x0, 0x0, 0x800}, 0xc, &(0x7f00000005c0)={&(0x7f0000000580)=@delchain={0x2c, 0x65, 0x2, 0x70bd26, 0x25dfdbfc, {0x0, 0x0, 0x0, r5, {0xffe0, 0x9}, {0xfff2, 0x9}, {0x8, 0x3}}, [@TCA_RATE={0x6, 0x5, {0x5, 0xff}}]}, 0x2c}, 0x1, 0x0, 0x0, 0x80}, 0x24000000) sendmsg$nl_route_sched(0xffffffffffffffff, &(0x7f0000000300)={0x0, 0x0, &(0x7f0000000180)={&(0x7f0000000640)=@deltclass={0x5c, 0x29, 0x2, 0x70bd25, 0x25dfdbfc, {0x0, 0x0, 0x0, 0x0, {0xffe0, 0xfff2}, {0x8}, {0x0, 0xb}}, [@TCA_RATE={0x6, 0x5, {0x80, 0x6}}, @TCA_RATE={0x6, 0x5, {0x9, 0x81}}, @TCA_RATE={0x6, 0x5, {0x9, 0x1}}, @tclass_kind_options=@c_skbprio={0xc}, @TCA_RATE={0x6, 0x5, {0x7f, 0x20}}, @tclass_kind_options=@c_skbprio={0xc}]}, 0x5c}}, 0x0) r6 = socket$netlink(0x10, 0x3, 0x0) r7 = openat$proc_capi20ncci(0xffffffffffffff9c, &(0x7f0000000100), 0x101080, 0x0) getsockopt$EBT_SO_GET_INIT_ENTRIES(r7, 0x0, 0x83, &(0x7f00000004c0)={'filter\x00', 0x0, 0x4, 0x19, [0x10001, 0x100, 0xeaf, 0x8, 0x0, 0x6], 0x6, &(0x7f0000000440)=[{}, {}, {}, {}, {}, {}], &(0x7f00000001c0)=""/25}, &(0x7f0000000240)=0x78) sendmmsg(r6, &(0x7f00000002c0), 0x40000000000009f, 0x0) 00:02:49 executing program 2: recvmmsg(0xffffffffffffffff, &(0x7f0000002280)=[{{&(0x7f0000000080)=@pppol2tp={0x18, 0x1, {0x0, 0xffffffffffffffff, {0x2, 0x0, @multicast2}}}, 0x80, &(0x7f0000000200)=[{&(0x7f0000000140)=""/81, 0x51}, {&(0x7f00000001c0)=""/9, 0x9}], 0x2, &(0x7f0000000600)=""/177, 0xb1}, 0xfffffff7}, {{&(0x7f00000006c0)=@pppol2tpv3={0x18, 0x1, {0x0, 0xffffffffffffffff, {0x2, 0x0, @local}}}, 0x80, &(0x7f0000000740)=[{&(0x7f0000000ac0)=""/142, 0x8e}, {&(0x7f0000000dc0)=""/200, 0xc8}, {&(0x7f0000000ec0)=""/205, 0xcd}, {&(0x7f0000000fc0)=""/4096, 0x1000}], 0x4}, 0x7}, {{&(0x7f0000001fc0)=@l2tp6={0xa, 0x0, 0x0, @dev}, 0x80, &(0x7f0000000780)=[{&(0x7f0000002040)=""/185, 0xb9}, {&(0x7f0000002100)=""/178, 0xb2}, {&(0x7f00000021c0)=""/184, 0xb8}], 0x3, &(0x7f0000000b80)=""/42, 0x2a}, 0x800}], 0x3, 0x2001, &(0x7f0000002340)={0x77359400}) (async) r1 = socket$inet_tcp(0x2, 0x1, 0x0) setsockopt$ARPT_SO_SET_REPLACE(r1, 0x0, 0x60, &(0x7f0000000440)={'filter\x00', 0x11, 0x4, 0x3f0, 0x0, 0x0, 0x200, 0x308, 0x308, 0x308, 0x7fffffe, 0x0, {[{{@arp={@remote, @broadcast, 0x0, 0x0, 0x0, 0x0, {@mac=@link_local={0x2}}, {@mac}, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 'bridge0\x00', 'erspan0\x00'}, 0xc0, 0x100}, @unspec=@RATEEST={0x40, 'RATEEST\x00', 0x0, {'syz1\x00'}}}, {{@uncond, 0xc0, 0x100}, @unspec=@RATEEST={0x40, 'RATEEST\x00', 0x0, {'syz0\x00'}}}, {{@arp={@multicast1, @initdev={0xac, 0x1e, 0x0, 0x0}, 0x0, 0x0, 0x0, 0x0, {@mac=@link_local}, {@mac=@multicast}, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 'veth0_vlan\x00', 'ipvlan1\x00'}, 0xc0, 0x108}, @unspec=@IDLETIMER={0x48, 'IDLETIMER\x00', 0x0, {0x0, 'syz0\x00'}}}], {{'\x00', 0xc0, 0xe8}, {0x28, '\x00', 0x2}}}}, 0x440) (async) recvmmsg(r1, &(0x7f0000004580)=[{{&(0x7f0000002c80)=@can, 0x80, &(0x7f00000041c0)=[{&(0x7f0000002d00)=""/13, 0xd}, {&(0x7f0000002d40)=""/235, 0xeb}, {&(0x7f0000002e40)=""/75, 0x4b}, {&(0x7f0000002ec0)=""/156, 0x9c}, {&(0x7f0000002f80)=""/66, 0x42}, {&(0x7f0000003000)=""/252, 0xfc}, {&(0x7f0000003100)=""/133, 0x85}, {&(0x7f00000031c0)=""/4096, 0x1000}], 0x8, &(0x7f0000004240)=""/159, 0x9f}, 0x2}, {{&(0x7f0000004300)=@ieee802154, 0x80, &(0x7f0000004500)=[{&(0x7f0000004380)=""/79, 0x4f}, {&(0x7f0000004400)=""/237, 0xed}], 0x2, &(0x7f0000004540)}, 0xe9}], 0x2, 0x10000, 0x0) (async) [ 169.815593][ T4140] netlink: 24 bytes leftover after parsing attributes in process `syz-executor.4'. syz_mount_image$ntfs3(&(0x7f0000000000), &(0x7f0000000100)='./file0\x00', 0x4045ff, 0x14, &(0x7f0000000bc0)=[{&(0x7f0000010000)="eb52904e5446532020202000020800000000000000f8000000000000000000000000000080008000ff0f0000000000000400000000000000ff00000000000000f600000001", 0x45}, {&(0x7f00000007c0)="813e37f8f9bc53b8d2190168e4d3d1b4f63c4b993e82f1dfe7354fcd09930a92c992e69637b8dc4d260290bdbb9fd0f4af588ab5629a7d33e299719b300fdac1ba10427c39a282e682073ec94414870644efe15b0f83f5804747f8ea08b994df7b76a47883cd97cca5171ad5aa2590c6b43085170868b6fc449bdaaf3f5bdcc77c7c151bb7d7fc784278788fd63bc61c48c174fe376c8e7b32d2b1d7c0a69068eced4c443fbec8e2e76ff5c226ee8d9addd18300565003f902fda9a394e982c64d0133c847e6ecd398a555ee2654599a93", 0xd1, 0x2000}, {&(0x7f0000000440)="46494c4530000300000000000000000001000100380001009801000000040000008000002ef8b9c0bf13980400000000030000000000000010000000600000000000180000000000480000001800000000db2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80106000000000000007f00000000000000000000000001000000000000000000000000000000000000300000006800000000001800000002004a00000018000100050000000000050000ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d8010070000000000000006c0000000700000000000000000000040324004d64bfe13500000000000000800000004800000001004000000001000000243f5bf72fa785ec4c081e0c7229c72d0000000000003e00000000000000400000000000000000f003000000000000f003000000000000f0030000000000113f040000000000b01620000000000001004000000003000000000000000000000000000000000040000000000000000010000000002000000000000000110102", 0x191, 0x4000}, {&(0x7f0000000040)="00000000000000000000000000000000000000000000000000000000000003", 0x1f, 0x41e0}, {&(0x7f00000102e0)="00000000000000000000000000000000b00000004800000001004000000003000000000000000000000000000000000040000000000000000010000000000000080000000000000008000000000000001101020000000000ffffffff0000030046494c453000030000000000000000000100010038000100580100000004000000000000000000000300000001000000020000000000000010000000600000000000180000000000480000001800000000ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80106000000000000000000000000000000000000000001000000000000000000000000000000000000300000007000000000001800000002005200000018000100050000000000050000ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d801001000000000000000100000000000000600000000000000080324004d00460054004d00690072007200000000000000800000004800000001004000000001000000000000000000000000000000000040000000000000000010000000000000001000000000000000100000000000002101ff", 0x1ab, 0x43a0}, {&(0x7f00000104c0)="000000000000000000000000000000000000000000000000000000000000020046494c453000030000000000000000000200010038000100580100000004000000000000000000000300000002000000020000000000000010000000600000000000180000000000480000001800000000ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80106000000000000000000000000000000000000000001000000000000000000000000000000000000300000007000000000001800000002005200000018000100050000000000050000ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d801000004000000000000000400000000000600000000000000080324004c006f006700460069006c0065000000000000008000000048000000010040000000010000000000000000003f00000000000000400000000000000000000400000000000000040000000000000004000000000021400001", 0x16c, 0x47e0}, {&(0x7f0000010640)="00000000000000000000000000000000000000000000000000000000000002", 0x1f, 0x49e0}, {&(0x7f0000010660)="000000000000000000000000000000000000000000000000000000000000020046494c453000030000000000000000000300010038000100e00100000004000000000000000000000600000003000000040000000000000010000000480000000000180000000000300000001800000000ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80106000000000000000000000000000000300000006800000000001800000001005000000018000100050000000000050000ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d8010000000000000000000000000000000006000000000000000703240056006f006c0075006d00650050000000800000000000180000000200640000001800000001000480480000005400000000000000140000000200340002000000000014009f011200010100000000000512000000000018009f011200010200000000000520000000200200000101000000000005120000000102000000000005200000002002000000000000600000003000000000001800000004001200000018000000730079007a006b0061006c006c0065007200000000000000700000002800000000001800000005000c00000018000000000000000000000003010000000000008000000018", 0x1e5, 0x4be0}, {&(0x7f0000000240)="000000000000000000000000000000000000000000000000000000000000040046494c453000030000000000000000000400010038000100c00100000004000000000000000000000400000004000000020000000000000010000000480000000000180000000000300000001800000000ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80106000000000000000000000000000000300000007000000000001800000002005200000018000100050000000000050000ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d8010010000000000000000a00000000000006000000000000000803240041007400740072004400650066000000000000005000000080000000000018000000030064000000180000000100048048000000540000000000000014000000020034000200000000001400890012000101000000000005120000000000180089001200010200000000000520000000200200000101000000000005120000000102000000000005200000002002000000000000800000004800000001004000000001000000000000000000000000000000000040000000000000000010000000000000000a000000000000000a000000000000110146", 0x1d3, 0x4fdd}, {&(0x7f00000008c0)="000000000000000000000000000000000000000000000000000000000000020046494c453000030000000000000000000500010038000300000200000004000000000000000000000600000005000000030000000000000010000000480000000000180000000000300000001800000000ab2bd24ec4d801132d87d24ec4d801132d87d24ec4d80100ab2bd24ec4d80126000010000000000000000000000000300000006000000000001800000001004400000018000100050000000000050000ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80100000000000000000000000000000000060000100000000001032e00000000005000000048000000010040000000020000000000000000000100000000000000400000000000000000200000000000002c100000000000002c10000000000000110243000000000090000000580000000004180000000300380000002000000024004900330030003000000001000000001000000100000010000000280000002800000001000000000000000000000018000000030000000000000000000000a00000005000000001044000000005000000000000000000000000000000000048000000000000000010000000000000001000000000000000100000000000002400490033003000110145", 0x1eb, 0x53e0}, {&(0x7f0000010ca0)="000000000000000000000000000000000000000000000000000000000000030046494c453000030000000000000000000600010038000100500100000004000000000000000000000300000006000000020000000000000010000000600000000000180000000000480000001800000000ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80106000000000000000000000000000000000000000001000000000000000000000000000000000000300000006800000000001800000002005000000018000100050000000000050000ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d801001000000000000040000000000000000600000000000000070324004200690074006d006100700080000000480000000100400000000100000000000000000000000000000000004000000000000000001000000000000040000000000000004000000000000000110147", 0x163, 0x57e0}, {&(0x7f0000011040)="000000000000000000000000000000000000000000000000000000000000020046494c453000030000000000000000000800010038000100780100000004000000000000000000000400000008000000020000000000000010000000600000000000180000000000480000001800000000ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80106000000000000000000000000000000000000000001000000000000000000000000000000000000300000007000000000001800000003005200000018000100050000000000050000ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d8010000000000000000000000000000000006000000000000000803240042006100640043006c0075007300ffff00000000800000001800000000001800000002000000000018000000800000005000000001044000000001000000000000000000fe01000000000000480000000000000000f01f000000000000f01f00000000000000000000000000240042006100640002ff01", 0x18b, 0x5fe0}, {&(0x7f0000011200)="000000000000000000000000000000000000000000000000000000000000020046494c453000030000000000000000000900010038000900000300000004000000000000000000000500000009000000030000000000000010000000600000000000180000000000480000001800000000ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80106000020000000000000000000000000000000000101000000000000000000000000000000000000300000006800000000001800000001005000000018000100050000000000050000ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80100000000000000000000000000000000060000200000000007032400530065006300750072006500800000005000000001044000000002000000000000000000400000000000000048000000000000000010040000000000700104000000000070010400000000002400530044005300114148000000000090000000e00000000004180000000300c00000002000000024005300440048000000000012000000001000000100000010000000b0000000b000000000000000180014000000000030000800000000005124b300010100005124b3000101000080000000000000007c0000004900490018001400000000003000080000000000a0ddde4202010000a0ddde42020100000001000000000000640000004900490018001400000000003000080000000300f01203f800010000f01203f80001000000000000000000007c000000490049000000000000000000100000000200000090000000c80000000004180000000400a800000020000000240053004900490000000000100000000010000001000000100000009800000098000000000000001400140000000000280004000000000000010000f01203f80001000000000000000000007c00000014001400000000002800040000000000010100005124b3000101000080000000000000007c0000001400140000000000280004000000000002010000a0ddde420201000000010000000000006400000000000000000000001000000002", 0x315, 0x63e0}, {&(0x7f0000011520)="000000000000000000000000000000000000000000000000000000000000030046494c453000030000000000000000000a0001003800010098010000000400000000000000000000040000000a000000020000000000000010000000600000000000180000000000480000001800000000ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80106000000000000000000000000000000000000000001000000000000000000000000000000000000300000006800000000001800000003005000000018000100050000000000050000ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d801000002000000000000000200000000000600000000000000070324005500700043006100730065008000000048000000010040000000010000000000000000001f000000000000004000000000000000000002000000000000000200000000000000020000000000212089", 0x163, 0x67e0}, {&(0x7f0000013b20)="d000000020000000000018000000030008000000180000002d0000003c000000e00000005800000000001800000004003c000000180000001400000000060400244c585549440000000000001400000000060400244c584749440000000000001400000000060400244c584d4f4400ed8100000000000000ffffffff0000e20046494c452a00030000000000000000000000000030000000380000000004", 0x9e, 0xc380}, {&(0x7f000001aa40)="494e4458280009000000000000000000000000000000000028000000b8060000e80f0000000000000d00d801000000000000000000000000000000000000000004000000000004006800520000000000050000000000050000ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d8010010000000000000000a000000000000060000000000000008032400410074007400720044006500660000000000010008000000000008006800520000000000050000000000050000ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d8010000000000000000000000000000000006000000000000000803240042006100640043006c007500730000000000070006000000000006006000500000000000050000000000050000ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d801001000000000000040000000000000000600000000000000070324004200690074006d0061007000070000000000070060004c0000000000050000000000050000ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d8010020000000000000002000000000000006000000000000000503240042006f006f00740069006c000b00000000000b006000500000000000050000000000050000ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec40d0000ab2bd24ec4d8010000000000000000000000000000000006000010000000000703240045007800740065006e00640002000000000002006800520000000000050000000000050000ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d801000004000000000000000400000000000600000000000000080324004c006f006700460069006c006500000000000100000000000000010060004a0000000000050000000000050000ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d8010070000000000000006c0000000000000600000000000000040324004d004600540000000000000001000000000001006800520000000000050000000000050000ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d801001000000000000000100000000000000600000000000000080324004d00460054004d0069007200720000000200000009000000000009006000500000000000050000000000050000ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d801000000000000000000000000000000000600002000000000070324005300650063007500720065000a00000000000a006000500000000000050000000000050000ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d8010000020000000d00000002000000000006000000000000000703240055007000430061007300650003000000000003006000500000000000050000000000050000ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d8010000000000000000000000000000000006000000000000000703240056006f006c0075006d00650005000000000005005800440000000000050000000000050000ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80100000000000000000000000000000000060000100000000001032e0000000000200000000000010068005400000000000500000000000500132d87d24ec4d801132d87d24ec4d801132d87d24ec4d801132d87d24ec4d80100100000000000006400000000000000200000002d0000000900660069006c0065002e0063006f006c006400000000001b0000000000010060004c0000000000050000000000050073a685d24ec4d80173a685d24ec4d80173a685d24ec4d80173a685d24ec4d80100000000000000000000000000000000200000102d0000000500660069006c0065003000000000001e0000000000010060004c0000000000050000000000050073a685d24ec4d801132d87d24ec4d801132d87d24ec4d80173a685d24ec4d80100100000000000000a0000000000000020000000590000000500660069006c006500310000000d001f0000000000010060004c00000000000500000000000500132d87d24ec4d801132d87d24ec4d801132d87d24ec4d801132d87d24ec4d80100300000000000002823000000000000200000002d0000000500660069006c0065003200000000001f0000000000010060004c00000000000500000000000500132d87d24ec4d801132d87d24ec4d801132d87d24ec4d801132d87d24ec4d80100300000000000002823000000000000200000002d0000000500660069006c00650033000000000000000000000000001000000002", 0x6cd, 0x45000}, {&(0x7f000001b200)="10", 0x1, 0x46080}, {&(0x7f000001b660)="f01203f80001000000000000000000007c0000000100048048000000580000000000000014000000020034000200000000001400890012000101000000000005120000000000180089001200010200000000000520000000200200000102000000000005200000002002000001020000000000052000000020020000000000005124b30001010000007c00000001000480480000005800000000000000140000000200340002000000000014009f111200010100000000000512000000000018009f01120001020080000000052000000020020000010200000000000520000000200200000102000000000005200000002002000000000000a0ddde4202010000000100000000000064000000010004803000000040000000000000001400000002001c000100000000031400ff011f00010100000000000100000000010200000000000520000000200200000102000000000005200000002002", 0x15b, 0x48000}, {&(0x7f000003c0c0)="0000000000000000000000000000000000000000000000000000000000000400ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff3fe5ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffebdf0000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff", 0x20024, 0xfffe0}, {&(0x7f00000104a0)="00000000000000000000000000000000000000000000000000000000000002", 0x1f, 0x4045e0}], 0x2, &(0x7f0000003580)=ANY=[], 0x1) (async) ioctl$sock_SIOCGIFVLAN_ADD_VLAN_CMD(0xffffffffffffffff, 0x8982, &(0x7f0000002380)={0x0, 'veth1_to_batadv\x00', {0x4}, 0x4}) (async) r2 = socket$inet_tcp(0x2, 0x1, 0x0) setsockopt$ARPT_SO_SET_REPLACE(r2, 0x0, 0x60, &(0x7f0000000440)={'filter\x00', 0x11, 0x4, 0x3f0, 0x0, 0x0, 0x200, 0x308, 0x308, 0x308, 0x7fffffe, 0x0, {[{{@arp={@remote, @broadcast, 0x0, 0x0, 0x0, 0x0, {@mac=@link_local={0x2}}, {@mac}, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 'bridge0\x00', 'erspan0\x00'}, 0xc0, 0x100}, @unspec=@RATEEST={0x40, 'RATEEST\x00', 0x0, {'syz1\x00'}}}, {{@uncond, 0xc0, 0x100}, @unspec=@RATEEST={0x40, 'RATEEST\x00', 0x0, {'syz0\x00'}}}, {{@arp={@multicast1, @initdev={0xac, 0x1e, 0x0, 0x0}, 0x0, 0x0, 0x0, 0x0, {@mac=@link_local}, {@mac=@multicast}, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 'veth0_vlan\x00', 'ipvlan1\x00'}, 0xc0, 0x108}, @unspec=@IDLETIMER={0x48, 'IDLETIMER\x00', 0x0, {0x0, 'syz0\x00'}}}], {{'\x00', 0xc0, 0xe8}, {0x28, '\x00', 0x2}}}}, 0x440) setsockopt$sock_int(r2, 0x1, 0x5f, &(0x7f00000023c0)=0x3, 0x4) setsockopt$EBT_SO_SET_COUNTERS(r0, 0x0, 0x81, &(0x7f0000002440)={'nat\x00', 0x0, 0x0, 0x0, [0x200, 0x100000000, 0x2, 0x7, 0x1, 0x7fffffffffffffff], 0x7, &(0x7f0000002400)=[{}, {}, {}], 0x0, [{}, {}, {}, {}, {}, {}, {}]}, 0xe8) r3 = openat(0xffffffffffffff9c, &(0x7f0000000180)='./cgroup.cpu/cpuset.cpus\x00', 0x0, 0x0) open_by_handle_at(r3, &(0x7f0000000140)=@ceph_nfs_confh={0x10, 0x2, {0x3}}, 0x0) (async) r4 = socket$qrtr(0x2a, 0x2, 0x0) sendmsg$kcm(r3, &(0x7f0000002bc0)={&(0x7f0000002540)=@pppol2tpv3={0x18, 0x1, {0x0, r4, {0x2, 0x4e21, @multicast2}, 0x1, 0x1, 0x3, 0x1}}, 0x80, &(0x7f0000002940)=[{&(0x7f00000025c0)="067f80bd447a9c7175dd559077e0e7f8f163508d05339b42679e7885baef8d393c87ca7f5690a4289f7ba75b85fa9c70147e8fac24a8a975747df81314b1179ad94e3a1b0298254edc9b820c427df1234ca934adb25866cdce591e20f145677c7ce7909d7b3ade0bbcaf4c36220f26d4a8d9b46eb9b0f090ebb6c622bae3549feebec9d50d48a75a60aedbc3489a37b8246cedf0e92782a846f598c421", 0x9d}, {&(0x7f0000002680)="53f36f554a756df8f5b1703eae6e55a2d6ab7b71b09ced14dd38b54557bb9dd3352f0cb6017b12334cd20fc3f4c8b244f288a880c557b6d54ffecd26ce986f8e0a97f0934f4a5f7c032783230769e13a289676015d50628835e8e53a5c3a733c180b45c64d60ceeb0bce24f5ea0fac0f543230508ba589486efd54d1f87acb3fd637a551d53e27708ab022caa3f19a77bf39d4ea8df2134672c4b3dc0748bb1fad51492b7f6efe26920258a7349950f83592fe60d1e9e7fc7ea99965a2f9c01fa81ba84dc8cb35c6f79b953f5e4003f83dde9ecc2b3c1ee14c61d53f2edaca9d2e4a7a3869232fd4e2fd5fcd61dc", 0xee}, {&(0x7f0000002780)="99af47bc51bcb340326672a45dcb4f8864a292a833cdc4c177b05e1e437e8e3e020335e3134f8fbcf67ff2b49365fd8b43108fda29fad560fcde419836beafadd29b180eb2d7e3b9852470c2e90232ea86732f95ec7cfbcd00a4279cb9d09f7addd4b0298ba839ba694f3534e7be51ed4dffa921524785792b1c92447a087d1450a065b713707b4b7aa88ddf064c4e50b8dd", 0x92}, {&(0x7f0000002840)="c9504101d4662b8c50d6a808fb1f4d582b75fd639c331295854ade00456d3006acaadb517ae3e0c1a15bb0d94b4cb50fd218d8fc1e2739f8375678b54f43da6e5b5cdad339114589f1b282f9a9ae8164", 0x50}, {&(0x7f00000028c0)="70214f2feb79407f075df55dd065bd5cf3bd5b39ca4adf1cbef79ee01398a351db10737f7976deb3ccb4b1dfe29f994ec33ea9f0958117f8bc1254eb0e009b1edf98a2a485bffa75cea07f6fc21f0c3f092da101db670dd740b2c940cbb9e68c271e9824", 0x64}], 0x5, &(0x7f00000029c0)=ANY=[@ANYBLOB="480000000000000000000000050000009194486c0afaa2269ed7765d571894c3f165c5c578caa82392e9321e2696849deb2ba7fea48a8a95fd68bfb0450e6724bd2f70734de14e3d700000000000000001000000080000003d9d55924a3fd7f939a2a68626184e0f28a2fe9b1b5a6e999b4a69acd52f9d8086a49cf4cfade15502a2be938fe293c18bd71d54fdba66f69f99ad83fadee6fcf20936e5078b89a806dbe864b6ca5a2ea5328b11c9c7e9274b7eec000000000050000000000000000000000007000000c963387954f1eae77116d78210cfc5a3f5eaf83165e9770dde392aa6aa83450cd072ac70b12c869bc7de1e42e828e1a2b0b52a33a10adb2020d4f837b31ff7e28000000000000000a5b35deb3c05000014485c7ccc78965851781bec6fa09ce3ebf48075295267461dbe64f91d694d6af807eccad5492aa1c4e308f658e626961f1632752641946b1d5c91098816d90df89ada40e4c8209c7009aa0b91fc0f47391453b8acff4171cb008657c435c54a28cf8e2382000060000000000000000f01000001000000c4d612e68f99ec96ba8b5b45bdfbe1fe23f50519080daf53d05225d1110a065b56ad1dff46588f8ad20f8333584366f7d62bb2b4f8cc2f94d2bedbe872d0e54798d6181ed2fbeaba4d5900"/488], 0x1e8}, 0x400c1) (async) ioctl$sock_ipv6_tunnel_SIOCCHG6RD(r4, 0x89fb, &(0x7f0000002c40)={'sit0\x00', &(0x7f0000002c00)={@remote, @dev={0xac, 0x14, 0x14, 0x1c}, 0x1b, 0x3}}) [ 169.839510][ T4140] Zero length message leads to an empty skb 00:02:49 executing program 1: r0 = syz_clone(0x20000000, 0x0, 0x0, 0x0, 0x0, 0x0) sched_setparam(r0, &(0x7f0000000000)=0x10001) 00:02:49 executing program 0: openat$ptmx(0xffffffffffffff9c, &(0x7f0000000140), 0x0, 0x0) r0 = openat(0xffffffffffffff9c, &(0x7f0000000180)='./cgroup.cpu/cpuset.cpus\x00', 0x0, 0x0) open_by_handle_at(r0, &(0x7f0000000140)=@ceph_nfs_confh={0x10, 0x2, {0x3}}, 0x0) r1 = openat(0xffffffffffffff9c, &(0x7f0000000180)='./cgroup.cpu/cpuset.cpus\x00', 0x0, 0x0) open_by_handle_at(r1, &(0x7f0000000140)=@ceph_nfs_confh={0x10, 0x2, {0x3}}, 0x400240) r2 = ioctl$TIOCGPTPEER(r1, 0x5441, 0x4) ioctl$TIOCSETD(r0, 0x5423, &(0x7f0000000000)=0xc) openat$sw_sync_info(0xffffffffffffff9c, &(0x7f0000000040), 0x202000, 0x0) openat$damon_kdamond_pid(0xffffffffffffff9c, &(0x7f00000001c0), 0x20000, 0x20) pwritev2(r2, &(0x7f0000000200)=[{&(0x7f0000000500)="563fe831e0a5f468a08662d1b22e7ee61c783fb31562f9f02c9808a37cef674505270d3b1b29a7b2e1b375cd8f8d7ad1f92a0008bc7c90bb13564e357d659ae25eb4f1d18953a0e14778c056c8dbe300cc70cfe2e935451fd65f993e23e35f74f679d7b941a97e12a127a32586799697e8664c5c7110761e8e9ebdb9901f959f1a2de956f5999d7baf8c95b594db393bd0d858c01e06fe221969afbe74d1f736ca4dbb208cbb9b599f01aba3d301095430ce1b796dccdb8ef7eab92a2d525d94ecafff9fd58cb4c74d4988556fbd8799df37380e77fab5048030568efeb136b7d547e9f61e2fd262020b61df72365328614e834f73b2d1cda6427cef083d656e3bb071feade962877c52d929fbda504bf4476b9c451210d8729f503ac6115fd607fe3fcdcc94fc4fb2f6f95b1f4bf8994aa6cb6978417b8e77c6405d5547a84f4dba24c871d1e2a4c2f1b76371d3e72b2336d3c47716cf471817a78cd312127055b38c6d18dd36d6481b1ea385889e3954b63fc11db14d0624ab242121bc17ee67addbd83ae99e20515a4a6513922839e3ee2c21b0295163e9a76702bf4a09c4c00a928d4c78d344a12d42c800de6092d28783615dbf021e70b4c8f798505445e06c5f43470a2aa98af8e28b95670cdbeecdb6bb3e89c6b524fa0d204d6f29d8e8d5093e85d8e79dde9dc55a563997cf2978868f70e649569207c95bb3b332041b171dc6322eaf5d55fa92677a6c4ce4c2e7dae5ba4d5307d8d3b925a1552306e03bbaf209da0a52404e3dbaa72e417ab6e7ea650e5321b91f31795e55b549af0412202587f8f381005174510c3ba5ee16b9a0ef106398f08d20ca0ea8b1fb3e6a0c68b3696c7e70cd7ae85aba52f92fe99467a1cf11ce636f51bf9a93eccea36161f25beac5632fb99a79b4af9b8e111967b69854caa5b177a08fc8cbad7586edd4c0b575510b99dba9fe2fdea24bd6348fed7bc29297aaa33b6b65ac6052560baa40c50adbd1a44513da4f702ee83cac2cc9d154bd29b94848b273ab2a062708d824ab54db047541bab0a1fb87abfab14195284583fa01078e5b3a2c4d6f621ce498124a0c3fe9583eab9c5cbc0863d236908b930ebda6480f25c0bad7003994c187af726f15a051602928e229ef033e194931ecbedf8b8297dd3c6cdee517c29fde0994e1b623c58011ec94a9deabfe886193d759c59ac47d407d8e71a9e19f88b84ed873eb15426649c5e9f9fcef85d6a9adc67a45f00f1eb5af6b1929002d29623435cc61805969acdee58b86194a2ccb6a9c6653dbf6faf8cefb58eadccb3d302869376f67a32e03019bb3d999bdc09837cb449823b08235d242f113a08ac0fd0559f968e0c5c1dff0ed4a9aa70c4b6b5e7758e2f6506a34fc0b881d4fea880403baf2dd7b1492adc505d364e91634f9d5d5a63eee1da9bc70eb054b6c0443cee1a018c79c2e49575c188cdf42e9a045f6d14d2aaf9e203543edb101e8d0327ad795bdb8479f2b9bba27c7b2ef064b7cc53938243a9b5e8076980c01d8d84857ce09d45cbe2948f2337504ad0f8f482e4eefde38482b8edbc4a0c7adf9c21b4e94c187b71b9456e4bbeadb566cc9796d729b2b7bc3e8fc8ceb1b0d00dd2a3fc9b288d1cc853f4dd95cddad93dfe7188f7188578580b1d3c702942f3b8b2b6a51536290e8542d6a4b050aa14601966c2c418c0127fc886e3dacb297f143a6257402a44ab4669d98ddef243b20fc35f162cd17285cd831855c72ddbbeefb09ffa65623db879c91c91ee4979a9936b7a02059ce60a4551ba35a79737b5a52bed6e96f26e03f1a971cd89b1237db80fcf2bf907438c26bd89aae03bd6ae3ebec2a6550d2a2f270c27870a672d5eeae149903ce94bf77008f529e46e42eeebbc82af7d1a13dae66f44c007cfd4306b2196e709c5204d5644c84821e81e566caf3285a795b2ec89086d62b3880a82a7f3052a6e1a37e2eff2ab9179f93eb14eb2d5029dfe1b1cbcd2312246f140a103ff67470b571685c4f1d1c89453bc3c4557ec52123533e7a4b01c3bf5cab72db39138dfd29ac282aacd16de8da76b382e6894eba05b577166a63d13326a6af86761a4fd33a7ce93bc485534748094d3c4e259826989978a8b541de6342fe63d53827d46a43bd77b67e968a981a3c82766573e7c989903dc848841ea5f62c4c141713560eb5b3bf04ef9dcdee1b8c26d76641f9f81989dd18882db78a9c4e5712ef375889dca9b59942daf7747c2f9024d836199cbec1723a8b933d17a419491804efc1ffcc77e02bcc0fb1bcec8149af0bf6e75010b51aa004ada4e09aab6127506a391f2bc685de66b1bc1a19ea8291fbb2aa2a3c9f5bc6ce2bc5733f6646da1b36aa15621806eb662ca488bc7b16e2e9874d437a8ace2685970f50ff4ae8d2549ead1410028c86a6dadd875f23596c9d556122bfb16343bf02b629d2b6cd1f4b60f7c05630303bff66efbc4f33a78cb1b5e3025b0b496f7a115eaf25f69d2c2366b40aaeef1ff95a8809e1f87239ee00a27927ccd3a5cce3e8e28fa2bb82840dd1a029558bb83950b6c1cb588d1d90bb3c8758b2006825a1887abd1357ad220d57a3c60f41e5b54a0e8a2967583c521befdeafadb731522a0cf9db0c16c8c6db7956736b1e65c8552feeb78b20739bd6dad93026adb7fac3e8e84ccf235dc9abfeb678c4497885799e5ca89d058e4d137bd08af2ceb8f5a0de22628deed831a694b679befc165b5620ca0b586d5401a2452e7bb7a0c76de0b32c20860081c8fc57f8ea957e6032730a192ed2e4b1b3c67cf8266f3fca1c0d7c051608084ed89cf0fb43c53edf636e781a55bcbdcab94d9b89d7a208fcfe5f118b5ed15a44e68226269973c468998c979ba4eae8baf3abe987d85eec6a6afa1d48658d6b4d73018ea0a3d4f5fd529e51d0bd06563e690d5b8ca5decda2229d22eae871071494aa0a10c2d59b3b2daaf5d0c3c66193fb48a67e3c6087ea9bf72972cc27cb2d747aef59216c256eafe9b4a413178e8d2e3ac342e004a8e7ae4c74d4e4e3d8358aae2de88fe4e5b1a79791d704d8f5fac30aa5f6cf02a16101b33029f9f6f5177e846c05ad33a767fbd098529e911d13b067c031743a3136a2ef94386f25a18658f16445fbf397cc937c916f18a2cfb08dbfe4a709a0af1f64e017ebb4d9330b021e009b24edf51d30ceca971e008b9a4a8b471a38e22005ad8f33ec59bc0397e5f0f7b1ecefa9f3632a049a48dae73d2d6dd069a02341eaee309be89aeed3ba0e9158fe98dbea731045d8a5a889e6d7eac863b05f543738bc55557aa273d3768ac9051ce2d60f08a1898ddf3a1b1893c64a8d0c6ccd1f0ab63f09a4f6b9638eb761fdb02c2c7f814524000a6a3e61b92e17f31726f412f25298cb4446cf9a129affdbed986bbde237640d3f2d720168f0c736859b8f4d0a532f124eeb5b8517081bae6c0511e857ac0f3d5a91513247326d621bb26464fa9207c9735fb45ae4ef2abe349c93a0f98cd1dd4bc38f983d5d33ca956ba8ab918f7c65dd3e3b00995b8b755c6c52193598033cbf89ba68801f7dee8a8df2a6ebbe0ff02d250dd9bc41de41c0d935f97c5ccd593f44c610043a2b1e73688cb717d316572421485cb0398465bafe1f83745ef84acaba7fa087818b897f6ed7a607808d4aeeadb1d8bf74dac4a6759e339ba6356fab37603d8dc32552dcbfead30d68b314ebb09460fe16ec7026803036b8974ddaae8fde745739a0e9d60e1896ea7b626d6597d58bd4babcb797eb1bf26490a468894a9d0d0420f68c81cb650ddf805a4ff5b134869513fad8f85b37ca7ab54800d5154cee8160ae99eacc8dfc834ed58109825c7fa7c222c78388d8d314e347abdc8bed42881eb36d9e38447a4e4500a6c22f9bc423ec8a1c597a505a5229205469b63336c3a40181455f0db41ae8c92c35b67ed1e6048c839bbe355aa1bb56628fbe42218a23010fb6fb0a6b9c6bf006c964e64d69f59f711967ff584a9465866fc7f1f8e96f1d2c6e5bae3ee85475e3fea4ee8ba2a58126ad6c63f5d7d54b2569ef384b224abcf5fd8996a3e12ada21c8673af7237dbbd73ecc69de36386c4e5cc597d18d6ce656114ac21a24e83236759c639983e8929f81b1f88ca72f540815ef7dad769c1e6d16eb2354afbae61f0bfc1e1397cd26126e57db6eaf680d398911c9c84ddfa00744c67a4280b9bfedf68f79daa5e25e5fc5174c0e41a84edfec48e415adbeb639ed789aca26acae8bf2ab2600dd88f9a0050af527b2b3533fd3343004b5eb2310b7e9c75bae823b6f3fc53b4b3fdf526d87574765602a2624be87e8c6045467a73600232feca884c9c144192610b4e235ac4a9b04f76d493cc958fd24aa9cc034dcc21291e8c6f942c4abc78a5474e57a98c174e3d7eb91356cb80c6eaa20930bb4a0124fb3e6c6784a77c8f48c008c7cce328313ffaf841a668f783f324f9b2f3fcb8380b24d8f916fa521480b11d2a15430ce36781c32fdf1f53dea1a0e72120d5958ff0d357a42b5c7c73c215160c4e3b41ebefbe42991566b3aabd7bd2002d2592be9d6627df8e91d71c8de3a50c78874fc32d9ce946d7dd503d01446cb346edead368aa415b477c2d3b8d06a754d25096aff5aca1538d58fb92a21d3147a6c6a17d5a70c0249f007bbc517afc31b6befb44211f68211848bb3bdabed783d391553cbb336ac30a61a069088271cea300ed4371234546155af86a245c421806ef0c4ea4af7130b6b651d201035b91aaf2d1c65bb081a63f8f7e18b2f55f62bd9a6758ecca118c6ebeb8af37337a32fcaeafab40a094955378c9852188e104278d99d1f7ff0b54d7e4cdce135d1c0b5973f23ce1417d3ff58609d0bb8283d41fc036fb68bee0031a1df80df8f9c351f7e714e2fd5585ae432ee12e987dd465d4d7958ffe9d605f1f891635e2992945ecf3b37612142b1d9be81efff35c49062124a8e201a0c040a0ae06f86b8a7e54de6666b5566dfac2ba4f56f4955eed78c38495e19b941ea2034f4a351f747e683d247d8c73eb4458b5bbad008a5b8b707e1e53134fcd1e478a0fd66599f0a4d3e5486249573021598788a30b44e3e610963cbd8fae3c1bf470d7cb0632a3f64268b6418779d9e37e73f9b69d20c334570037789cae7f6785a283443206a81c27e82210bd5b9f3c5d64ed4b18f47dbdeda2fed1ae75d8fd30a9950b3a907fac4bc8c13de958cc82c7fa67b71867ef5069d77a9d00b940e5a98aa20ebf1809da3d60270e647a11c236ceaad4e2b0023a7eac091c002169cd0a55bfae39fea135a1490d18d57af6df06c8070d096adc5c2d42a53bceaafb1d3207ee0c9fa100865e593e081073c4d09f5ff47cb89952ab9f3a63e66788be02162f26b31919ab6b3ba4157085afde3d2408c6e9f7a0e174ab9dcfd30ae2abbad2fa9cc83ae42f67f3f7bdd170a03913e614ea3cd7aa06b3ebb1d02bdaf3988b78d5b4c43011fc48b8613cdca33c5f8f995d7c6a6d1373fbad091a239c084a0e728eefa618182cf4fb15fb7b99ac16908fce6dcf1ef0ee3bffc93d6ecbe0b65236bf0556439b663c60ee803242d1bb1f029ba20f2f96d287b32ad51fd288da0d398e4c39c81bc3710b5ca930e8c14af71528f8cac1a4776c97d7c77ffb3e8b9e30f5774a0c262a45271d5ba46ca0c5ff10732f44dfb2efb56d2ed2df00c4764ba6eb95c5206676e7a59134d21d00183b02c811ceb81234e4962e803960cf63c7faad57f275b26ca4a3864f56e3cd0e5c554500555b96ee114", 0x1000}], 0x1, 0x4, 0x800, 0x2) ioctl$BINDER_WRITE_READ(r0, 0xc0306201, &(0x7f0000000440)={0x9c, 0x0, &(0x7f00000002c0)=[@transaction={0x40406300, {0x2, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x58, 0x18, &(0x7f0000000080)=ANY=[@ANYBLOB="85616466000000000500000000000000010000000000000026000000000000008561646600000000020007000000000002000000000000003300000000000000852a6877081100000300"/88], &(0x7f0000000100)={0x0, 0x20, 0x40}}}, @reply_sg={0x40486312, {0x1, 0x0, 0x0, 0x0, 0x20, 0x0, 0x0, 0x50, 0x18, &(0x7f0000000480)={@fda={0x66646185, 0x8, 0x1, 0x31}, @flat=@binder={0x73622a85, 0x1101}, @fd={0x66642a85, 0x0, r0}}, &(0x7f0000000280)={0x0, 0x20, 0x38}}, 0x40}, @dead_binder_done], 0x93, 0x0, &(0x7f0000000380)="355f3a3ea2f8f4157c72b5bf7d95a527122f9e3bb84ac7b5a37a62215be4a515d4a7ccc8b909f5a3f49cd13e27de08344594ef2f436849300b44a138160f10e0314dc7fea24c4b77dc91b5141429e55698720deaf8fdb8085cb48947d48c4ea3638132f7fa89d541ef03d3d0bbfa96c75f9d37348abc75b97a1a6736a23eb36948f4171be655d8de14d7a98c0258521f069c4e"}) 00:02:49 executing program 3: r0 = openat$snapshot(0xffffffffffffff9c, &(0x7f0000000000), 0x1, 0x0) ioctl$SNAPSHOT_S2RAM(r0, 0x330b) (async) r1 = socket$inet_tcp(0x2, 0x1, 0x0) setsockopt$ARPT_SO_SET_REPLACE(r1, 0x0, 0x60, &(0x7f0000000440)={'filter\x00', 0x11, 0x4, 0x3f0, 0x0, 0x0, 0x200, 0x308, 0x308, 0x308, 0x7fffffe, 0x0, {[{{@arp={@remote, @broadcast, 0x0, 0x0, 0x0, 0x0, {@mac=@link_local={0x2}}, {@mac}, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 'bridge0\x00', 'erspan0\x00'}, 0xc0, 0x100}, @unspec=@RATEEST={0x40, 'RATEEST\x00', 0x0, {'syz1\x00'}}}, {{@uncond, 0xc0, 0x100}, @unspec=@RATEEST={0x40, 'RATEEST\x00', 0x0, {'syz0\x00'}}}, {{@arp={@multicast1, @initdev={0xac, 0x1e, 0x0, 0x0}, 0x0, 0x0, 0x0, 0x0, {@mac=@link_local}, {@mac=@multicast}, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 'veth0_vlan\x00', 'ipvlan1\x00'}, 0xc0, 0x108}, @unspec=@IDLETIMER={0x48, 'IDLETIMER\x00', 0x0, {0x0, 'syz0\x00'}}}], {{'\x00', 0xc0, 0xe8}, {0x28, '\x00', 0x2}}}}, 0x440) (async) read$snapshot(r0, &(0x7f0000000140)=""/164, 0xa4) ioctl$NS_GET_OWNER_UID(0xffffffffffffffff, 0xb704, &(0x7f0000000080)=0x0) (async) setsockopt$IPT_SO_SET_REPLACE(r1, 0x0, 0x40, &(0x7f0000000880)=@filter={'filter\x00', 0xe, 0x4, 0x358, 0xffffffff, 0x1f8, 0x0, 0xd8, 0xffffffff, 0xffffffff, 0x2c0, 0x2c0, 0x2c0, 0xffffffff, 0x4, &(0x7f0000000100), {[{{@uncond, 0x0, 0xb0, 0xd8, 0x0, {}, [@common=@set={{0x40}, {{0x1, [0x6, 0xf, 0x1, 0x2, 0x4, 0x1], 0x6}}}]}, @common=@inet=@SYNPROXY={0x28, 'SYNPROXY\x00', 0x0, {0x2, 0x80, 0xf747}}}, {{@ip={@multicast1, @broadcast, 0xffffffff, 0xff, 'batadv_slave_0\x00', 'xfrm0\x00', {}, {}, 0x84, 0x2, 0x1c}, 0x0, 0xc0, 0x120, 0x0, {}, [@common=@socket0={{0x20}}, @common=@addrtype={{0x30}, {0x100, 0x40}}]}, @common=@SET={0x60, 'SET\x00', 0x0, {{0x0, [0x6, 0x4, 0x0, 0x0, 0x1, 0x4], 0x1}, {0x3, [0x0, 0x3, 0x0, 0x4, 0x5, 0x2], 0x0, 0x4}}}}, {{@ip={@empty, @local, 0xff, 0x0, 'veth0_to_hsr\x00', 'dummy0\x00', {0xff}, {}, 0x29, 0x3, 0x40}, 0x0, 0xa0, 0xc8, 0x0, {}, [@common=@addrtype={{0x30}, {0x121, 0x80, 0x1}}]}, @common=@unspec=@CLASSIFY={0x28, 'CLASSIFY\x00', 0x0, {0x6}}}], {{'\x00', 0x0, 0x70, 0x98}, {0x28}}}}, 0x3b8) (async) r3 = openat$procfs(0xffffffffffffff9c, &(0x7f0000000200)='/proc/asound/seq/clients\x00', 0x0, 0x0) setsockopt$IP_VS_SO_SET_DELDEST(r3, 0x0, 0x488, &(0x7f0000000240)={{0x29, @empty, 0x4e21, 0x2, 'sh\x00', 0x18, 0x60a, 0x23}, {@multicast1, 0x4e22, 0x10000, 0x8, 0x80000000, 0x3}}, 0x44) (async) fsetxattr$security_capability(r1, &(0x7f0000000040), &(0x7f00000000c0)=@v3={0x3000000, [{0x4, 0x7fffffff}, {0x0, 0x928}], r2}, 0x18, 0x3) [ 169.881090][ T4154] random: crng reseeded on system resumption 00:02:49 executing program 4: r0 = socket$netlink(0x10, 0x3, 0x4) r1 = socket(0x10, 0x803, 0x0) sendmsg$nl_route_sched(r1, &(0x7f0000000a00)={0x0, 0x0, &(0x7f00000009c0)={0x0, 0x68}}, 0x0) getsockname$packet(r1, &(0x7f0000000200)={0x11, 0x0, 0x0, 0x1, 0x0, 0x6, @broadcast}, &(0x7f00000000c0)=0x14) sendmsg$nl_route(r0, &(0x7f0000000040)={0x0, 0x0, &(0x7f0000000000)={&(0x7f0000000140)=ANY=[@ANYRES16=r2, @ANYRES32=r2, @ANYBLOB="0000000000000000280012000900010076657468"], 0x48}}, 0x0) sendmsg$nl_route_sched(0xffffffffffffffff, &(0x7f00000002c0)={0x0, 0x0, &(0x7f0000000280)={&(0x7f0000000340)=ANY=[@ANYBLOB="3000000024000b0f00"/20, @ANYRES32=r2, @ANYBLOB="cde20000ffffffff00007680337b0100696e6772657373007efac025c34690194347a44b9071a4fb0d101f898983b5c0aa43aa2c1cbec392e31a67a65a820cd8b8216d3bd2d6000000003278a0117b1811038e85367138941a"], 0x30}}, 0x0) ioctl$SIOCGETVIFCNT(0xffffffffffffffff, 0x89e0, &(0x7f0000000080)={0xffffffffffffffff}) r3 = socket$netlink(0x10, 0x3, 0x0) r4 = socket(0x10, 0x803, 0x0) sendmsg$IPSET_CMD_LIST(r4, &(0x7f00000005c0)={0x0, 0x0, &(0x7f0000000580)={0x0, 0x14}}, 0x0) getsockname$packet(r4, &(0x7f0000000380)={0x11, 0x0, 0x0, 0x1, 0x0, 0x6, @broadcast}, &(0x7f0000000200)=0x14) sendmsg$nl_route(r3, &(0x7f0000000040)={0x0, 0x0, &(0x7f0000000000)={&(0x7f00000008c0)=ANY=[@ANYBLOB="480000001000050700"/20, @ANYRES32=r5, @ANYBLOB="0000000000000000280012000c00010076657468"], 0x48}}, 0x0) sendmsg$nl_route_sched(0xffffffffffffffff, &(0x7f0000000040)={0x0, 0x0, &(0x7f0000000100)={&(0x7f0000000080)=ANY=[@ANYBLOB="9c5e000900000000e10c0400003aff", @ANYRES32=r5, @ANYBLOB="00000000f1ffffff000000000b000100636c736163740000"], 0x30}}, 0x0) sendmsg$nl_route_sched(0xffffffffffffffff, &(0x7f0000000280)={0x0, 0x0, &(0x7f0000000240)={&(0x7f00000003c0)=@delchain={0x24, 0x29, 0xd3d, 0x0, 0x0, {0x0, 0x0, 0x0, r5, {0xfff2, 0xffff}}}, 0x24}}, 0x0) sendmsg$nl_route_sched(0xffffffffffffffff, &(0x7f0000000600)={&(0x7f0000000540)={0x10, 0x0, 0x0, 0x800}, 0xc, &(0x7f00000005c0)={&(0x7f0000000580)=@delchain={0x2c, 0x65, 0x2, 0x70bd26, 0x25dfdbfc, {0x0, 0x0, 0x0, r5, {0xffe0, 0x9}, {0xfff2, 0x9}, {0x8, 0x3}}, [@TCA_RATE={0x6, 0x5, {0x5, 0xff}}]}, 0x2c}, 0x1, 0x0, 0x0, 0x80}, 0x24000000) sendmsg$nl_route_sched(0xffffffffffffffff, &(0x7f0000000300)={0x0, 0x0, &(0x7f0000000180)={&(0x7f0000000640)=@deltclass={0x5c, 0x29, 0x2, 0x70bd25, 0x25dfdbfc, {0x0, 0x0, 0x0, 0x0, {0xffe0, 0xfff2}, {0x8}, {0x0, 0xb}}, [@TCA_RATE={0x6, 0x5, {0x80, 0x6}}, @TCA_RATE={0x6, 0x5, {0x9, 0x81}}, @TCA_RATE={0x6, 0x5, {0x9, 0x1}}, @tclass_kind_options=@c_skbprio={0xc}, @TCA_RATE={0x6, 0x5, {0x7f, 0x20}}, @tclass_kind_options=@c_skbprio={0xc}]}, 0x5c}}, 0x0) r6 = socket$netlink(0x10, 0x3, 0x0) r7 = openat$proc_capi20ncci(0xffffffffffffff9c, &(0x7f0000000100), 0x101080, 0x0) getsockopt$EBT_SO_GET_INIT_ENTRIES(r7, 0x0, 0x83, &(0x7f00000004c0)={'filter\x00', 0x0, 0x4, 0x19, [0x10001, 0x100, 0xeaf, 0x8, 0x0, 0x6], 0x6, &(0x7f0000000440)=[{}, {}, {}, {}, {}, {}], &(0x7f00000001c0)=""/25}, &(0x7f0000000240)=0x78) sendmmsg(r6, &(0x7f00000002c0), 0x40000000000009f, 0x0) socket$netlink(0x10, 0x3, 0x4) (async) socket(0x10, 0x803, 0x0) (async) sendmsg$nl_route_sched(r1, &(0x7f0000000a00)={0x0, 0x0, &(0x7f00000009c0)={0x0, 0x68}}, 0x0) (async) getsockname$packet(r1, &(0x7f0000000200)={0x11, 0x0, 0x0, 0x1, 0x0, 0x6, @broadcast}, &(0x7f00000000c0)=0x14) (async) sendmsg$nl_route(r0, &(0x7f0000000040)={0x0, 0x0, &(0x7f0000000000)={&(0x7f0000000140)=ANY=[@ANYRES16=r2, @ANYRES32=r2, @ANYBLOB="0000000000000000280012000900010076657468"], 0x48}}, 0x0) (async) sendmsg$nl_route_sched(0xffffffffffffffff, &(0x7f00000002c0)={0x0, 0x0, &(0x7f0000000280)={&(0x7f0000000340)=ANY=[@ANYBLOB="3000000024000b0f00"/20, @ANYRES32=r2, @ANYBLOB="cde20000ffffffff00007680337b0100696e6772657373007efac025c34690194347a44b9071a4fb0d101f898983b5c0aa43aa2c1cbec392e31a67a65a820cd8b8216d3bd2d6000000003278a0117b1811038e85367138941a"], 0x30}}, 0x0) (async) ioctl$SIOCGETVIFCNT(0xffffffffffffffff, 0x89e0, &(0x7f0000000080)={0xffffffffffffffff}) (async) socket$netlink(0x10, 0x3, 0x0) (async) socket(0x10, 0x803, 0x0) (async) sendmsg$IPSET_CMD_LIST(r4, &(0x7f00000005c0)={0x0, 0x0, &(0x7f0000000580)={0x0, 0x14}}, 0x0) (async) getsockname$packet(r4, &(0x7f0000000380)={0x11, 0x0, 0x0, 0x1, 0x0, 0x6, @broadcast}, &(0x7f0000000200)=0x14) (async) sendmsg$nl_route(r3, &(0x7f0000000040)={0x0, 0x0, &(0x7f0000000000)={&(0x7f00000008c0)=ANY=[@ANYBLOB="480000001000050700"/20, @ANYRES32=r5, @ANYBLOB="0000000000000000280012000c00010076657468"], 0x48}}, 0x0) (async) sendmsg$nl_route_sched(0xffffffffffffffff, &(0x7f0000000040)={0x0, 0x0, &(0x7f0000000100)={&(0x7f0000000080)=ANY=[@ANYBLOB="9c5e000900000000e10c0400003aff", @ANYRES32=r5, @ANYBLOB="00000000f1ffffff000000000b000100636c736163740000"], 0x30}}, 0x0) (async) sendmsg$nl_route_sched(0xffffffffffffffff, &(0x7f0000000280)={0x0, 0x0, &(0x7f0000000240)={&(0x7f00000003c0)=@delchain={0x24, 0x29, 0xd3d, 0x0, 0x0, {0x0, 0x0, 0x0, r5, {0xfff2, 0xffff}}}, 0x24}}, 0x0) (async) sendmsg$nl_route_sched(0xffffffffffffffff, &(0x7f0000000600)={&(0x7f0000000540)={0x10, 0x0, 0x0, 0x800}, 0xc, &(0x7f00000005c0)={&(0x7f0000000580)=@delchain={0x2c, 0x65, 0x2, 0x70bd26, 0x25dfdbfc, {0x0, 0x0, 0x0, r5, {0xffe0, 0x9}, {0xfff2, 0x9}, {0x8, 0x3}}, [@TCA_RATE={0x6, 0x5, {0x5, 0xff}}]}, 0x2c}, 0x1, 0x0, 0x0, 0x80}, 0x24000000) (async) sendmsg$nl_route_sched(0xffffffffffffffff, &(0x7f0000000300)={0x0, 0x0, &(0x7f0000000180)={&(0x7f0000000640)=@deltclass={0x5c, 0x29, 0x2, 0x70bd25, 0x25dfdbfc, {0x0, 0x0, 0x0, 0x0, {0xffe0, 0xfff2}, {0x8}, {0x0, 0xb}}, [@TCA_RATE={0x6, 0x5, {0x80, 0x6}}, @TCA_RATE={0x6, 0x5, {0x9, 0x81}}, @TCA_RATE={0x6, 0x5, {0x9, 0x1}}, @tclass_kind_options=@c_skbprio={0xc}, @TCA_RATE={0x6, 0x5, {0x7f, 0x20}}, @tclass_kind_options=@c_skbprio={0xc}]}, 0x5c}}, 0x0) (async) socket$netlink(0x10, 0x3, 0x0) (async) openat$proc_capi20ncci(0xffffffffffffff9c, &(0x7f0000000100), 0x101080, 0x0) (async) getsockopt$EBT_SO_GET_INIT_ENTRIES(r7, 0x0, 0x83, &(0x7f00000004c0)={'filter\x00', 0x0, 0x4, 0x19, [0x10001, 0x100, 0xeaf, 0x8, 0x0, 0x6], 0x6, &(0x7f0000000440)=[{}, {}, {}, {}, {}, {}], &(0x7f00000001c0)=""/25}, &(0x7f0000000240)=0x78) (async) sendmmsg(r6, &(0x7f00000002c0), 0x40000000000009f, 0x0) (async) [ 169.910887][ T4154] x_tables: unsorted underflow at hook 4 00:02:49 executing program 1: r0 = socket$nl_generic(0x10, 0x3, 0x10) syz_genetlink_get_family_id$nl80211(&(0x7f0000000240), 0xffffffffffffffff) r1 = socket$inet_tcp(0x2, 0x1, 0x0) setsockopt$ARPT_SO_SET_REPLACE(r1, 0x0, 0x60, &(0x7f0000000440)={'filter\x00', 0x11, 0x4, 0x3f0, 0x0, 0x0, 0x200, 0x308, 0x308, 0x308, 0x7fffffe, 0x0, {[{{@arp={@remote, @broadcast, 0x0, 0x0, 0x0, 0x0, {@mac=@link_local={0x2}}, {@mac}, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 'bridge0\x00', 'erspan0\x00'}, 0xc0, 0x100}, @unspec=@RATEEST={0x40, 'RATEEST\x00', 0x0, {'syz1\x00'}}}, {{@uncond, 0xc0, 0x100}, @unspec=@RATEEST={0x40, 'RATEEST\x00', 0x0, {'syz0\x00'}}}, {{@arp={@multicast1, @initdev={0xac, 0x1e, 0x0, 0x0}, 0x0, 0x0, 0x0, 0x0, {@mac=@link_local}, {@mac=@multicast}, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 'veth0_vlan\x00', 'ipvlan1\x00'}, 0xc0, 0x108}, @unspec=@IDLETIMER={0x48, 'IDLETIMER\x00', 0x0, {0x0, 'syz0\x00'}}}], {{'\x00', 0xc0, 0xe8}, {0x28, '\x00', 0x2}}}}, 0x440) sendmsg$NL80211_CMD_CRIT_PROTOCOL_START(r0, &(0x7f00000000c0)={0x0, 0x0, &(0x7f0000000080)={&(0x7f0000000040)=ANY=[@ANYBLOB='(\x00\x00\x00', @ANYRES32=r1, @ANYRESOCT=0x0], 0x28}}, 0x10) [ 169.915781][ T4157] x_tables: duplicate underflow at hook 2 [ 169.917452][ T4156] netlink: 24 bytes leftover after parsing attributes in process `syz-executor.4'. 00:02:49 executing program 2: recvmmsg(0xffffffffffffffff, &(0x7f0000002280)=[{{&(0x7f0000000080)=@pppol2tp={0x18, 0x1, {0x0, 0xffffffffffffffff, {0x2, 0x0, @multicast2}}}, 0x80, &(0x7f0000000200)=[{&(0x7f0000000140)=""/81, 0x51}, {&(0x7f00000001c0)=""/9, 0x9}], 0x2, &(0x7f0000000600)=""/177, 0xb1}, 0xfffffff7}, {{&(0x7f00000006c0)=@pppol2tpv3={0x18, 0x1, {0x0, 0xffffffffffffffff, {0x2, 0x0, @local}}}, 0x80, &(0x7f0000000740)=[{&(0x7f0000000ac0)=""/142, 0x8e}, {&(0x7f0000000dc0)=""/200, 0xc8}, {&(0x7f0000000ec0)=""/205, 0xcd}, {&(0x7f0000000fc0)=""/4096, 0x1000}], 0x4}, 0x7}, {{&(0x7f0000001fc0)=@l2tp6={0xa, 0x0, 0x0, @dev}, 0x80, &(0x7f0000000780)=[{&(0x7f0000002040)=""/185, 0xb9}, {&(0x7f0000002100)=""/178, 0xb2}, {&(0x7f00000021c0)=""/184, 0xb8}], 0x3, &(0x7f0000000b80)=""/42, 0x2a}, 0x800}], 0x3, 0x2001, &(0x7f0000002340)={0x77359400}) r1 = socket$inet_tcp(0x2, 0x1, 0x0) setsockopt$ARPT_SO_SET_REPLACE(r1, 0x0, 0x60, &(0x7f0000000440)={'filter\x00', 0x11, 0x4, 0x3f0, 0x0, 0x0, 0x200, 0x308, 0x308, 0x308, 0x7fffffe, 0x0, {[{{@arp={@remote, @broadcast, 0x0, 0x0, 0x0, 0x0, {@mac=@link_local={0x2}}, {@mac}, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 'bridge0\x00', 'erspan0\x00'}, 0xc0, 0x100}, @unspec=@RATEEST={0x40, 'RATEEST\x00', 0x0, {'syz1\x00'}}}, {{@uncond, 0xc0, 0x100}, @unspec=@RATEEST={0x40, 'RATEEST\x00', 0x0, {'syz0\x00'}}}, {{@arp={@multicast1, @initdev={0xac, 0x1e, 0x0, 0x0}, 0x0, 0x0, 0x0, 0x0, {@mac=@link_local}, {@mac=@multicast}, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 'veth0_vlan\x00', 'ipvlan1\x00'}, 0xc0, 0x108}, @unspec=@IDLETIMER={0x48, 'IDLETIMER\x00', 0x0, {0x0, 'syz0\x00'}}}], {{'\x00', 0xc0, 0xe8}, {0x28, '\x00', 0x2}}}}, 0x440) recvmmsg(r1, &(0x7f0000004580)=[{{&(0x7f0000002c80)=@can, 0x80, &(0x7f00000041c0)=[{&(0x7f0000002d00)=""/13, 0xd}, {&(0x7f0000002d40)=""/235, 0xeb}, {&(0x7f0000002e40)=""/75, 0x4b}, {&(0x7f0000002ec0)=""/156, 0x9c}, {&(0x7f0000002f80)=""/66, 0x42}, {&(0x7f0000003000)=""/252, 0xfc}, {&(0x7f0000003100)=""/133, 0x85}, {&(0x7f00000031c0)=""/4096, 0x1000}], 0x8, &(0x7f0000004240)=""/159, 0x9f}, 0x2}, {{&(0x7f0000004300)=@ieee802154, 0x80, &(0x7f0000004500)=[{&(0x7f0000004380)=""/79, 0x4f}, {&(0x7f0000004400)=""/237, 0xed}], 0x2, &(0x7f0000004540)}, 0xe9}], 0x2, 0x10000, 0x0) (async) syz_mount_image$ntfs3(&(0x7f0000000000), &(0x7f0000000100)='./file0\x00', 0x4045ff, 0x14, &(0x7f0000000bc0)=[{&(0x7f0000010000)="eb52904e5446532020202000020800000000000000f8000000000000000000000000000080008000ff0f0000000000000400000000000000ff00000000000000f600000001", 0x45}, {&(0x7f00000007c0)="813e37f8f9bc53b8d2190168e4d3d1b4f63c4b993e82f1dfe7354fcd09930a92c992e69637b8dc4d260290bdbb9fd0f4af588ab5629a7d33e299719b300fdac1ba10427c39a282e682073ec94414870644efe15b0f83f5804747f8ea08b994df7b76a47883cd97cca5171ad5aa2590c6b43085170868b6fc449bdaaf3f5bdcc77c7c151bb7d7fc784278788fd63bc61c48c174fe376c8e7b32d2b1d7c0a69068eced4c443fbec8e2e76ff5c226ee8d9addd18300565003f902fda9a394e982c64d0133c847e6ecd398a555ee2654599a93", 0xd1, 0x2000}, {&(0x7f0000000440)="46494c4530000300000000000000000001000100380001009801000000040000008000002ef8b9c0bf13980400000000030000000000000010000000600000000000180000000000480000001800000000db2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80106000000000000007f00000000000000000000000001000000000000000000000000000000000000300000006800000000001800000002004a00000018000100050000000000050000ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d8010070000000000000006c0000000700000000000000000000040324004d64bfe13500000000000000800000004800000001004000000001000000243f5bf72fa785ec4c081e0c7229c72d0000000000003e00000000000000400000000000000000f003000000000000f003000000000000f0030000000000113f040000000000b01620000000000001004000000003000000000000000000000000000000000040000000000000000010000000002000000000000000110102", 0x191, 0x4000}, {&(0x7f0000000040)="00000000000000000000000000000000000000000000000000000000000003", 0x1f, 0x41e0}, {&(0x7f00000102e0)="00000000000000000000000000000000b00000004800000001004000000003000000000000000000000000000000000040000000000000000010000000000000080000000000000008000000000000001101020000000000ffffffff0000030046494c453000030000000000000000000100010038000100580100000004000000000000000000000300000001000000020000000000000010000000600000000000180000000000480000001800000000ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80106000000000000000000000000000000000000000001000000000000000000000000000000000000300000007000000000001800000002005200000018000100050000000000050000ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d801001000000000000000100000000000000600000000000000080324004d00460054004d00690072007200000000000000800000004800000001004000000001000000000000000000000000000000000040000000000000000010000000000000001000000000000000100000000000002101ff", 0x1ab, 0x43a0}, {&(0x7f00000104c0)="000000000000000000000000000000000000000000000000000000000000020046494c453000030000000000000000000200010038000100580100000004000000000000000000000300000002000000020000000000000010000000600000000000180000000000480000001800000000ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80106000000000000000000000000000000000000000001000000000000000000000000000000000000300000007000000000001800000002005200000018000100050000000000050000ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d801000004000000000000000400000000000600000000000000080324004c006f006700460069006c0065000000000000008000000048000000010040000000010000000000000000003f00000000000000400000000000000000000400000000000000040000000000000004000000000021400001", 0x16c, 0x47e0}, {&(0x7f0000010640)="00000000000000000000000000000000000000000000000000000000000002", 0x1f, 0x49e0}, {&(0x7f0000010660)="000000000000000000000000000000000000000000000000000000000000020046494c453000030000000000000000000300010038000100e00100000004000000000000000000000600000003000000040000000000000010000000480000000000180000000000300000001800000000ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80106000000000000000000000000000000300000006800000000001800000001005000000018000100050000000000050000ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d8010000000000000000000000000000000006000000000000000703240056006f006c0075006d00650050000000800000000000180000000200640000001800000001000480480000005400000000000000140000000200340002000000000014009f011200010100000000000512000000000018009f011200010200000000000520000000200200000101000000000005120000000102000000000005200000002002000000000000600000003000000000001800000004001200000018000000730079007a006b0061006c006c0065007200000000000000700000002800000000001800000005000c00000018000000000000000000000003010000000000008000000018", 0x1e5, 0x4be0}, {&(0x7f0000000240)="000000000000000000000000000000000000000000000000000000000000040046494c453000030000000000000000000400010038000100c00100000004000000000000000000000400000004000000020000000000000010000000480000000000180000000000300000001800000000ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80106000000000000000000000000000000300000007000000000001800000002005200000018000100050000000000050000ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d8010010000000000000000a00000000000006000000000000000803240041007400740072004400650066000000000000005000000080000000000018000000030064000000180000000100048048000000540000000000000014000000020034000200000000001400890012000101000000000005120000000000180089001200010200000000000520000000200200000101000000000005120000000102000000000005200000002002000000000000800000004800000001004000000001000000000000000000000000000000000040000000000000000010000000000000000a000000000000000a000000000000110146", 0x1d3, 0x4fdd}, {&(0x7f00000008c0)="000000000000000000000000000000000000000000000000000000000000020046494c453000030000000000000000000500010038000300000200000004000000000000000000000600000005000000030000000000000010000000480000000000180000000000300000001800000000ab2bd24ec4d801132d87d24ec4d801132d87d24ec4d80100ab2bd24ec4d80126000010000000000000000000000000300000006000000000001800000001004400000018000100050000000000050000ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80100000000000000000000000000000000060000100000000001032e00000000005000000048000000010040000000020000000000000000000100000000000000400000000000000000200000000000002c100000000000002c10000000000000110243000000000090000000580000000004180000000300380000002000000024004900330030003000000001000000001000000100000010000000280000002800000001000000000000000000000018000000030000000000000000000000a00000005000000001044000000005000000000000000000000000000000000048000000000000000010000000000000001000000000000000100000000000002400490033003000110145", 0x1eb, 0x53e0}, {&(0x7f0000010ca0)="000000000000000000000000000000000000000000000000000000000000030046494c453000030000000000000000000600010038000100500100000004000000000000000000000300000006000000020000000000000010000000600000000000180000000000480000001800000000ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80106000000000000000000000000000000000000000001000000000000000000000000000000000000300000006800000000001800000002005000000018000100050000000000050000ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d801001000000000000040000000000000000600000000000000070324004200690074006d006100700080000000480000000100400000000100000000000000000000000000000000004000000000000000001000000000000040000000000000004000000000000000110147", 0x163, 0x57e0}, {&(0x7f0000011040)="000000000000000000000000000000000000000000000000000000000000020046494c453000030000000000000000000800010038000100780100000004000000000000000000000400000008000000020000000000000010000000600000000000180000000000480000001800000000ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80106000000000000000000000000000000000000000001000000000000000000000000000000000000300000007000000000001800000003005200000018000100050000000000050000ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d8010000000000000000000000000000000006000000000000000803240042006100640043006c0075007300ffff00000000800000001800000000001800000002000000000018000000800000005000000001044000000001000000000000000000fe01000000000000480000000000000000f01f000000000000f01f00000000000000000000000000240042006100640002ff01", 0x18b, 0x5fe0}, {&(0x7f0000011200)="000000000000000000000000000000000000000000000000000000000000020046494c453000030000000000000000000900010038000900000300000004000000000000000000000500000009000000030000000000000010000000600000000000180000000000480000001800000000ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80106000020000000000000000000000000000000000101000000000000000000000000000000000000300000006800000000001800000001005000000018000100050000000000050000ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80100000000000000000000000000000000060000200000000007032400530065006300750072006500800000005000000001044000000002000000000000000000400000000000000048000000000000000010040000000000700104000000000070010400000000002400530044005300114148000000000090000000e00000000004180000000300c00000002000000024005300440048000000000012000000001000000100000010000000b0000000b000000000000000180014000000000030000800000000005124b300010100005124b3000101000080000000000000007c0000004900490018001400000000003000080000000000a0ddde4202010000a0ddde42020100000001000000000000640000004900490018001400000000003000080000000300f01203f800010000f01203f80001000000000000000000007c000000490049000000000000000000100000000200000090000000c80000000004180000000400a800000020000000240053004900490000000000100000000010000001000000100000009800000098000000000000001400140000000000280004000000000000010000f01203f80001000000000000000000007c00000014001400000000002800040000000000010100005124b3000101000080000000000000007c0000001400140000000000280004000000000002010000a0ddde420201000000010000000000006400000000000000000000001000000002", 0x315, 0x63e0}, {&(0x7f0000011520)="000000000000000000000000000000000000000000000000000000000000030046494c453000030000000000000000000a0001003800010098010000000400000000000000000000040000000a000000020000000000000010000000600000000000180000000000480000001800000000ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80106000000000000000000000000000000000000000001000000000000000000000000000000000000300000006800000000001800000003005000000018000100050000000000050000ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d801000002000000000000000200000000000600000000000000070324005500700043006100730065008000000048000000010040000000010000000000000000001f000000000000004000000000000000000002000000000000000200000000000000020000000000212089", 0x163, 0x67e0}, {&(0x7f0000013b20)="d000000020000000000018000000030008000000180000002d0000003c000000e00000005800000000001800000004003c000000180000001400000000060400244c585549440000000000001400000000060400244c584749440000000000001400000000060400244c584d4f4400ed8100000000000000ffffffff0000e20046494c452a00030000000000000000000000000030000000380000000004", 0x9e, 0xc380}, {&(0x7f000001aa40)="494e4458280009000000000000000000000000000000000028000000b8060000e80f0000000000000d00d801000000000000000000000000000000000000000004000000000004006800520000000000050000000000050000ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d8010010000000000000000a000000000000060000000000000008032400410074007400720044006500660000000000010008000000000008006800520000000000050000000000050000ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d8010000000000000000000000000000000006000000000000000803240042006100640043006c007500730000000000070006000000000006006000500000000000050000000000050000ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d801001000000000000040000000000000000600000000000000070324004200690074006d0061007000070000000000070060004c0000000000050000000000050000ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d8010020000000000000002000000000000006000000000000000503240042006f006f00740069006c000b00000000000b006000500000000000050000000000050000ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec40d0000ab2bd24ec4d8010000000000000000000000000000000006000010000000000703240045007800740065006e00640002000000000002006800520000000000050000000000050000ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d801000004000000000000000400000000000600000000000000080324004c006f006700460069006c006500000000000100000000000000010060004a0000000000050000000000050000ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d8010070000000000000006c0000000000000600000000000000040324004d004600540000000000000001000000000001006800520000000000050000000000050000ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d801001000000000000000100000000000000600000000000000080324004d00460054004d0069007200720000000200000009000000000009006000500000000000050000000000050000ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d801000000000000000000000000000000000600002000000000070324005300650063007500720065000a00000000000a006000500000000000050000000000050000ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d8010000020000000d00000002000000000006000000000000000703240055007000430061007300650003000000000003006000500000000000050000000000050000ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d8010000000000000000000000000000000006000000000000000703240056006f006c0075006d00650005000000000005005800440000000000050000000000050000ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80100000000000000000000000000000000060000100000000001032e0000000000200000000000010068005400000000000500000000000500132d87d24ec4d801132d87d24ec4d801132d87d24ec4d801132d87d24ec4d80100100000000000006400000000000000200000002d0000000900660069006c0065002e0063006f006c006400000000001b0000000000010060004c0000000000050000000000050073a685d24ec4d80173a685d24ec4d80173a685d24ec4d80173a685d24ec4d80100000000000000000000000000000000200000102d0000000500660069006c0065003000000000001e0000000000010060004c0000000000050000000000050073a685d24ec4d801132d87d24ec4d801132d87d24ec4d80173a685d24ec4d80100100000000000000a0000000000000020000000590000000500660069006c006500310000000d001f0000000000010060004c00000000000500000000000500132d87d24ec4d801132d87d24ec4d801132d87d24ec4d801132d87d24ec4d80100300000000000002823000000000000200000002d0000000500660069006c0065003200000000001f0000000000010060004c00000000000500000000000500132d87d24ec4d801132d87d24ec4d801132d87d24ec4d801132d87d24ec4d80100300000000000002823000000000000200000002d0000000500660069006c00650033000000000000000000000000001000000002", 0x6cd, 0x45000}, {&(0x7f000001b200)="10", 0x1, 0x46080}, {&(0x7f000001b660)="f01203f80001000000000000000000007c0000000100048048000000580000000000000014000000020034000200000000001400890012000101000000000005120000000000180089001200010200000000000520000000200200000102000000000005200000002002000001020000000000052000000020020000000000005124b30001010000007c00000001000480480000005800000000000000140000000200340002000000000014009f111200010100000000000512000000000018009f01120001020080000000052000000020020000010200000000000520000000200200000102000000000005200000002002000000000000a0ddde4202010000000100000000000064000000010004803000000040000000000000001400000002001c000100000000031400ff011f00010100000000000100000000010200000000000520000000200200000102000000000005200000002002", 0x15b, 0x48000}, {&(0x7f000003c0c0)="0000000000000000000000000000000000000000000000000000000000000400ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff3fe5ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffebdf0000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff", 0x20024, 0xfffe0}, {&(0x7f00000104a0)="00000000000000000000000000000000000000000000000000000000000002", 0x1f, 0x4045e0}], 0x2, &(0x7f0000003580)=ANY=[], 0x1) (async) ioctl$sock_SIOCGIFVLAN_ADD_VLAN_CMD(0xffffffffffffffff, 0x8982, &(0x7f0000002380)={0x0, 'veth1_to_batadv\x00', {0x4}, 0x4}) r2 = socket$inet_tcp(0x2, 0x1, 0x0) setsockopt$ARPT_SO_SET_REPLACE(r2, 0x0, 0x60, &(0x7f0000000440)={'filter\x00', 0x11, 0x4, 0x3f0, 0x0, 0x0, 0x200, 0x308, 0x308, 0x308, 0x7fffffe, 0x0, {[{{@arp={@remote, @broadcast, 0x0, 0x0, 0x0, 0x0, {@mac=@link_local={0x2}}, {@mac}, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 'bridge0\x00', 'erspan0\x00'}, 0xc0, 0x100}, @unspec=@RATEEST={0x40, 'RATEEST\x00', 0x0, {'syz1\x00'}}}, {{@uncond, 0xc0, 0x100}, @unspec=@RATEEST={0x40, 'RATEEST\x00', 0x0, {'syz0\x00'}}}, {{@arp={@multicast1, @initdev={0xac, 0x1e, 0x0, 0x0}, 0x0, 0x0, 0x0, 0x0, {@mac=@link_local}, {@mac=@multicast}, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 'veth0_vlan\x00', 'ipvlan1\x00'}, 0xc0, 0x108}, @unspec=@IDLETIMER={0x48, 'IDLETIMER\x00', 0x0, {0x0, 'syz0\x00'}}}], {{'\x00', 0xc0, 0xe8}, {0x28, '\x00', 0x2}}}}, 0x440) setsockopt$sock_int(r2, 0x1, 0x5f, &(0x7f00000023c0)=0x3, 0x4) setsockopt$EBT_SO_SET_COUNTERS(r0, 0x0, 0x81, &(0x7f0000002440)={'nat\x00', 0x0, 0x0, 0x0, [0x200, 0x100000000, 0x2, 0x7, 0x1, 0x7fffffffffffffff], 0x7, &(0x7f0000002400)=[{}, {}, {}], 0x0, [{}, {}, {}, {}, {}, {}, {}]}, 0xe8) (async) r3 = openat(0xffffffffffffff9c, &(0x7f0000000180)='./cgroup.cpu/cpuset.cpus\x00', 0x0, 0x0) open_by_handle_at(r3, &(0x7f0000000140)=@ceph_nfs_confh={0x10, 0x2, {0x3}}, 0x0) (async) r4 = socket$qrtr(0x2a, 0x2, 0x0) sendmsg$kcm(r3, &(0x7f0000002bc0)={&(0x7f0000002540)=@pppol2tpv3={0x18, 0x1, {0x0, r4, {0x2, 0x4e21, @multicast2}, 0x1, 0x1, 0x3, 0x1}}, 0x80, &(0x7f0000002940)=[{&(0x7f00000025c0)="067f80bd447a9c7175dd559077e0e7f8f163508d05339b42679e7885baef8d393c87ca7f5690a4289f7ba75b85fa9c70147e8fac24a8a975747df81314b1179ad94e3a1b0298254edc9b820c427df1234ca934adb25866cdce591e20f145677c7ce7909d7b3ade0bbcaf4c36220f26d4a8d9b46eb9b0f090ebb6c622bae3549feebec9d50d48a75a60aedbc3489a37b8246cedf0e92782a846f598c421", 0x9d}, {&(0x7f0000002680)="53f36f554a756df8f5b1703eae6e55a2d6ab7b71b09ced14dd38b54557bb9dd3352f0cb6017b12334cd20fc3f4c8b244f288a880c557b6d54ffecd26ce986f8e0a97f0934f4a5f7c032783230769e13a289676015d50628835e8e53a5c3a733c180b45c64d60ceeb0bce24f5ea0fac0f543230508ba589486efd54d1f87acb3fd637a551d53e27708ab022caa3f19a77bf39d4ea8df2134672c4b3dc0748bb1fad51492b7f6efe26920258a7349950f83592fe60d1e9e7fc7ea99965a2f9c01fa81ba84dc8cb35c6f79b953f5e4003f83dde9ecc2b3c1ee14c61d53f2edaca9d2e4a7a3869232fd4e2fd5fcd61dc", 0xee}, {&(0x7f0000002780)="99af47bc51bcb340326672a45dcb4f8864a292a833cdc4c177b05e1e437e8e3e020335e3134f8fbcf67ff2b49365fd8b43108fda29fad560fcde419836beafadd29b180eb2d7e3b9852470c2e90232ea86732f95ec7cfbcd00a4279cb9d09f7addd4b0298ba839ba694f3534e7be51ed4dffa921524785792b1c92447a087d1450a065b713707b4b7aa88ddf064c4e50b8dd", 0x92}, {&(0x7f0000002840)="c9504101d4662b8c50d6a808fb1f4d582b75fd639c331295854ade00456d3006acaadb517ae3e0c1a15bb0d94b4cb50fd218d8fc1e2739f8375678b54f43da6e5b5cdad339114589f1b282f9a9ae8164", 0x50}, {&(0x7f00000028c0)="70214f2feb79407f075df55dd065bd5cf3bd5b39ca4adf1cbef79ee01398a351db10737f7976deb3ccb4b1dfe29f994ec33ea9f0958117f8bc1254eb0e009b1edf98a2a485bffa75cea07f6fc21f0c3f092da101db670dd740b2c940cbb9e68c271e9824", 0x64}], 0x5, &(0x7f00000029c0)=ANY=[@ANYBLOB="480000000000000000000000050000009194486c0afaa2269ed7765d571894c3f165c5c578caa82392e9321e2696849deb2ba7fea48a8a95fd68bfb0450e6724bd2f70734de14e3d700000000000000001000000080000003d9d55924a3fd7f939a2a68626184e0f28a2fe9b1b5a6e999b4a69acd52f9d8086a49cf4cfade15502a2be938fe293c18bd71d54fdba66f69f99ad83fadee6fcf20936e5078b89a806dbe864b6ca5a2ea5328b11c9c7e9274b7eec000000000050000000000000000000000007000000c963387954f1eae77116d78210cfc5a3f5eaf83165e9770dde392aa6aa83450cd072ac70b12c869bc7de1e42e828e1a2b0b52a33a10adb2020d4f837b31ff7e28000000000000000a5b35deb3c05000014485c7ccc78965851781bec6fa09ce3ebf48075295267461dbe64f91d694d6af807eccad5492aa1c4e308f658e626961f1632752641946b1d5c91098816d90df89ada40e4c8209c7009aa0b91fc0f47391453b8acff4171cb008657c435c54a28cf8e2382000060000000000000000f01000001000000c4d612e68f99ec96ba8b5b45bdfbe1fe23f50519080daf53d05225d1110a065b56ad1dff46588f8ad20f8333584366f7d62bb2b4f8cc2f94d2bedbe872d0e54798d6181ed2fbeaba4d5900"/488], 0x1e8}, 0x400c1) (async) ioctl$sock_ipv6_tunnel_SIOCCHG6RD(r4, 0x89fb, &(0x7f0000002c40)={'sit0\x00', &(0x7f0000002c00)={@remote, @dev={0xac, 0x14, 0x14, 0x1c}, 0x1b, 0x3}}) 00:02:49 executing program 0: openat$ptmx(0xffffffffffffff9c, &(0x7f0000000140), 0x0, 0x0) r0 = openat(0xffffffffffffff9c, &(0x7f0000000180)='./cgroup.cpu/cpuset.cpus\x00', 0x0, 0x0) open_by_handle_at(r0, &(0x7f0000000140)=@ceph_nfs_confh={0x10, 0x2, {0x3}}, 0x0) r1 = openat(0xffffffffffffff9c, &(0x7f0000000180)='./cgroup.cpu/cpuset.cpus\x00', 0x0, 0x0) open_by_handle_at(r1, &(0x7f0000000140)=@ceph_nfs_confh={0x10, 0x2, {0x3}}, 0x400240) r2 = ioctl$TIOCGPTPEER(r1, 0x5441, 0x4) ioctl$TIOCSETD(r0, 0x5423, &(0x7f0000000000)=0xc) openat$sw_sync_info(0xffffffffffffff9c, &(0x7f0000000040), 0x202000, 0x0) openat$damon_kdamond_pid(0xffffffffffffff9c, &(0x7f00000001c0), 0x20000, 0x20) pwritev2(r2, &(0x7f0000000200)=[{&(0x7f0000000500)="563fe831e0a5f468a08662d1b22e7ee61c783fb31562f9f02c9808a37cef674505270d3b1b29a7b2e1b375cd8f8d7ad1f92a0008bc7c90bb13564e357d659ae25eb4f1d18953a0e14778c056c8dbe300cc70cfe2e935451fd65f993e23e35f74f679d7b941a97e12a127a32586799697e8664c5c7110761e8e9ebdb9901f959f1a2de956f5999d7baf8c95b594db393bd0d858c01e06fe221969afbe74d1f736ca4dbb208cbb9b599f01aba3d301095430ce1b796dccdb8ef7eab92a2d525d94ecafff9fd58cb4c74d4988556fbd8799df37380e77fab5048030568efeb136b7d547e9f61e2fd262020b61df72365328614e834f73b2d1cda6427cef083d656e3bb071feade962877c52d929fbda504bf4476b9c451210d8729f503ac6115fd607fe3fcdcc94fc4fb2f6f95b1f4bf8994aa6cb6978417b8e77c6405d5547a84f4dba24c871d1e2a4c2f1b76371d3e72b2336d3c47716cf471817a78cd312127055b38c6d18dd36d6481b1ea385889e3954b63fc11db14d0624ab242121bc17ee67addbd83ae99e20515a4a6513922839e3ee2c21b0295163e9a76702bf4a09c4c00a928d4c78d344a12d42c800de6092d28783615dbf021e70b4c8f798505445e06c5f43470a2aa98af8e28b95670cdbeecdb6bb3e89c6b524fa0d204d6f29d8e8d5093e85d8e79dde9dc55a563997cf2978868f70e649569207c95bb3b332041b171dc6322eaf5d55fa92677a6c4ce4c2e7dae5ba4d5307d8d3b925a1552306e03bbaf209da0a52404e3dbaa72e417ab6e7ea650e5321b91f31795e55b549af0412202587f8f381005174510c3ba5ee16b9a0ef106398f08d20ca0ea8b1fb3e6a0c68b3696c7e70cd7ae85aba52f92fe99467a1cf11ce636f51bf9a93eccea36161f25beac5632fb99a79b4af9b8e111967b69854caa5b177a08fc8cbad7586edd4c0b575510b99dba9fe2fdea24bd6348fed7bc29297aaa33b6b65ac6052560baa40c50adbd1a44513da4f702ee83cac2cc9d154bd29b94848b273ab2a062708d824ab54db047541bab0a1fb87abfab14195284583fa01078e5b3a2c4d6f621ce498124a0c3fe9583eab9c5cbc0863d236908b930ebda6480f25c0bad7003994c187af726f15a051602928e229ef033e194931ecbedf8b8297dd3c6cdee517c29fde0994e1b623c58011ec94a9deabfe886193d759c59ac47d407d8e71a9e19f88b84ed873eb15426649c5e9f9fcef85d6a9adc67a45f00f1eb5af6b1929002d29623435cc61805969acdee58b86194a2ccb6a9c6653dbf6faf8cefb58eadccb3d302869376f67a32e03019bb3d999bdc09837cb449823b08235d242f113a08ac0fd0559f968e0c5c1dff0ed4a9aa70c4b6b5e7758e2f6506a34fc0b881d4fea880403baf2dd7b1492adc505d364e91634f9d5d5a63eee1da9bc70eb054b6c0443cee1a018c79c2e49575c188cdf42e9a045f6d14d2aaf9e203543edb101e8d0327ad795bdb8479f2b9bba27c7b2ef064b7cc53938243a9b5e8076980c01d8d84857ce09d45cbe2948f2337504ad0f8f482e4eefde38482b8edbc4a0c7adf9c21b4e94c187b71b9456e4bbeadb566cc9796d729b2b7bc3e8fc8ceb1b0d00dd2a3fc9b288d1cc853f4dd95cddad93dfe7188f7188578580b1d3c702942f3b8b2b6a51536290e8542d6a4b050aa14601966c2c418c0127fc886e3dacb297f143a6257402a44ab4669d98ddef243b20fc35f162cd17285cd831855c72ddbbeefb09ffa65623db879c91c91ee4979a9936b7a02059ce60a4551ba35a79737b5a52bed6e96f26e03f1a971cd89b1237db80fcf2bf907438c26bd89aae03bd6ae3ebec2a6550d2a2f270c27870a672d5eeae149903ce94bf77008f529e46e42eeebbc82af7d1a13dae66f44c007cfd4306b2196e709c5204d5644c84821e81e566caf3285a795b2ec89086d62b3880a82a7f3052a6e1a37e2eff2ab9179f93eb14eb2d5029dfe1b1cbcd2312246f140a103ff67470b571685c4f1d1c89453bc3c4557ec52123533e7a4b01c3bf5cab72db39138dfd29ac282aacd16de8da76b382e6894eba05b577166a63d13326a6af86761a4fd33a7ce93bc485534748094d3c4e259826989978a8b541de6342fe63d53827d46a43bd77b67e968a981a3c82766573e7c989903dc848841ea5f62c4c141713560eb5b3bf04ef9dcdee1b8c26d76641f9f81989dd18882db78a9c4e5712ef375889dca9b59942daf7747c2f9024d836199cbec1723a8b933d17a419491804efc1ffcc77e02bcc0fb1bcec8149af0bf6e75010b51aa004ada4e09aab6127506a391f2bc685de66b1bc1a19ea8291fbb2aa2a3c9f5bc6ce2bc5733f6646da1b36aa15621806eb662ca488bc7b16e2e9874d437a8ace2685970f50ff4ae8d2549ead1410028c86a6dadd875f23596c9d556122bfb16343bf02b629d2b6cd1f4b60f7c05630303bff66efbc4f33a78cb1b5e3025b0b496f7a115eaf25f69d2c2366b40aaeef1ff95a8809e1f87239ee00a27927ccd3a5cce3e8e28fa2bb82840dd1a029558bb83950b6c1cb588d1d90bb3c8758b2006825a1887abd1357ad220d57a3c60f41e5b54a0e8a2967583c521befdeafadb731522a0cf9db0c16c8c6db7956736b1e65c8552feeb78b20739bd6dad93026adb7fac3e8e84ccf235dc9abfeb678c4497885799e5ca89d058e4d137bd08af2ceb8f5a0de22628deed831a694b679befc165b5620ca0b586d5401a2452e7bb7a0c76de0b32c20860081c8fc57f8ea957e6032730a192ed2e4b1b3c67cf8266f3fca1c0d7c051608084ed89cf0fb43c53edf636e781a55bcbdcab94d9b89d7a208fcfe5f118b5ed15a44e68226269973c468998c979ba4eae8baf3abe987d85eec6a6afa1d48658d6b4d73018ea0a3d4f5fd529e51d0bd06563e690d5b8ca5decda2229d22eae871071494aa0a10c2d59b3b2daaf5d0c3c66193fb48a67e3c6087ea9bf72972cc27cb2d747aef59216c256eafe9b4a413178e8d2e3ac342e004a8e7ae4c74d4e4e3d8358aae2de88fe4e5b1a79791d704d8f5fac30aa5f6cf02a16101b33029f9f6f5177e846c05ad33a767fbd098529e911d13b067c031743a3136a2ef94386f25a18658f16445fbf397cc937c916f18a2cfb08dbfe4a709a0af1f64e017ebb4d9330b021e009b24edf51d30ceca971e008b9a4a8b471a38e22005ad8f33ec59bc0397e5f0f7b1ecefa9f3632a049a48dae73d2d6dd069a02341eaee309be89aeed3ba0e9158fe98dbea731045d8a5a889e6d7eac863b05f543738bc55557aa273d3768ac9051ce2d60f08a1898ddf3a1b1893c64a8d0c6ccd1f0ab63f09a4f6b9638eb761fdb02c2c7f814524000a6a3e61b92e17f31726f412f25298cb4446cf9a129affdbed986bbde237640d3f2d720168f0c736859b8f4d0a532f124eeb5b8517081bae6c0511e857ac0f3d5a91513247326d621bb26464fa9207c9735fb45ae4ef2abe349c93a0f98cd1dd4bc38f983d5d33ca956ba8ab918f7c65dd3e3b00995b8b755c6c52193598033cbf89ba68801f7dee8a8df2a6ebbe0ff02d250dd9bc41de41c0d935f97c5ccd593f44c610043a2b1e73688cb717d316572421485cb0398465bafe1f83745ef84acaba7fa087818b897f6ed7a607808d4aeeadb1d8bf74dac4a6759e339ba6356fab37603d8dc32552dcbfead30d68b314ebb09460fe16ec7026803036b8974ddaae8fde745739a0e9d60e1896ea7b626d6597d58bd4babcb797eb1bf26490a468894a9d0d0420f68c81cb650ddf805a4ff5b134869513fad8f85b37ca7ab54800d5154cee8160ae99eacc8dfc834ed58109825c7fa7c222c78388d8d314e347abdc8bed42881eb36d9e38447a4e4500a6c22f9bc423ec8a1c597a505a5229205469b63336c3a40181455f0db41ae8c92c35b67ed1e6048c839bbe355aa1bb56628fbe42218a23010fb6fb0a6b9c6bf006c964e64d69f59f711967ff584a9465866fc7f1f8e96f1d2c6e5bae3ee85475e3fea4ee8ba2a58126ad6c63f5d7d54b2569ef384b224abcf5fd8996a3e12ada21c8673af7237dbbd73ecc69de36386c4e5cc597d18d6ce656114ac21a24e83236759c639983e8929f81b1f88ca72f540815ef7dad769c1e6d16eb2354afbae61f0bfc1e1397cd26126e57db6eaf680d398911c9c84ddfa00744c67a4280b9bfedf68f79daa5e25e5fc5174c0e41a84edfec48e415adbeb639ed789aca26acae8bf2ab2600dd88f9a0050af527b2b3533fd3343004b5eb2310b7e9c75bae823b6f3fc53b4b3fdf526d87574765602a2624be87e8c6045467a73600232feca884c9c144192610b4e235ac4a9b04f76d493cc958fd24aa9cc034dcc21291e8c6f942c4abc78a5474e57a98c174e3d7eb91356cb80c6eaa20930bb4a0124fb3e6c6784a77c8f48c008c7cce328313ffaf841a668f783f324f9b2f3fcb8380b24d8f916fa521480b11d2a15430ce36781c32fdf1f53dea1a0e72120d5958ff0d357a42b5c7c73c215160c4e3b41ebefbe42991566b3aabd7bd2002d2592be9d6627df8e91d71c8de3a50c78874fc32d9ce946d7dd503d01446cb346edead368aa415b477c2d3b8d06a754d25096aff5aca1538d58fb92a21d3147a6c6a17d5a70c0249f007bbc517afc31b6befb44211f68211848bb3bdabed783d391553cbb336ac30a61a069088271cea300ed4371234546155af86a245c421806ef0c4ea4af7130b6b651d201035b91aaf2d1c65bb081a63f8f7e18b2f55f62bd9a6758ecca118c6ebeb8af37337a32fcaeafab40a094955378c9852188e104278d99d1f7ff0b54d7e4cdce135d1c0b5973f23ce1417d3ff58609d0bb8283d41fc036fb68bee0031a1df80df8f9c351f7e714e2fd5585ae432ee12e987dd465d4d7958ffe9d605f1f891635e2992945ecf3b37612142b1d9be81efff35c49062124a8e201a0c040a0ae06f86b8a7e54de6666b5566dfac2ba4f56f4955eed78c38495e19b941ea2034f4a351f747e683d247d8c73eb4458b5bbad008a5b8b707e1e53134fcd1e478a0fd66599f0a4d3e5486249573021598788a30b44e3e610963cbd8fae3c1bf470d7cb0632a3f64268b6418779d9e37e73f9b69d20c334570037789cae7f6785a283443206a81c27e82210bd5b9f3c5d64ed4b18f47dbdeda2fed1ae75d8fd30a9950b3a907fac4bc8c13de958cc82c7fa67b71867ef5069d77a9d00b940e5a98aa20ebf1809da3d60270e647a11c236ceaad4e2b0023a7eac091c002169cd0a55bfae39fea135a1490d18d57af6df06c8070d096adc5c2d42a53bceaafb1d3207ee0c9fa100865e593e081073c4d09f5ff47cb89952ab9f3a63e66788be02162f26b31919ab6b3ba4157085afde3d2408c6e9f7a0e174ab9dcfd30ae2abbad2fa9cc83ae42f67f3f7bdd170a03913e614ea3cd7aa06b3ebb1d02bdaf3988b78d5b4c43011fc48b8613cdca33c5f8f995d7c6a6d1373fbad091a239c084a0e728eefa618182cf4fb15fb7b99ac16908fce6dcf1ef0ee3bffc93d6ecbe0b65236bf0556439b663c60ee803242d1bb1f029ba20f2f96d287b32ad51fd288da0d398e4c39c81bc3710b5ca930e8c14af71528f8cac1a4776c97d7c77ffb3e8b9e30f5774a0c262a45271d5ba46ca0c5ff10732f44dfb2efb56d2ed2df00c4764ba6eb95c5206676e7a59134d21d00183b02c811ceb81234e4962e803960cf63c7faad57f275b26ca4a3864f56e3cd0e5c554500555b96ee114", 0x1000}], 0x1, 0x4, 0x800, 0x2) ioctl$BINDER_WRITE_READ(r0, 0xc0306201, &(0x7f0000000440)={0x9c, 0x0, &(0x7f00000002c0)=[@transaction={0x40406300, {0x2, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x58, 0x18, &(0x7f0000000080)=ANY=[@ANYBLOB="85616466000000000500000000000000010000000000000026000000000000008561646600000000020007000000000002000000000000003300000000000000852a6877081100000300"/88], &(0x7f0000000100)={0x0, 0x20, 0x40}}}, @reply_sg={0x40486312, {0x1, 0x0, 0x0, 0x0, 0x20, 0x0, 0x0, 0x50, 0x18, &(0x7f0000000480)={@fda={0x66646185, 0x8, 0x1, 0x31}, @flat=@binder={0x73622a85, 0x1101}, @fd={0x66642a85, 0x0, r0}}, &(0x7f0000000280)={0x0, 0x20, 0x38}}, 0x40}, @dead_binder_done], 0x93, 0x0, &(0x7f0000000380)="355f3a3ea2f8f4157c72b5bf7d95a527122f9e3bb84ac7b5a37a62215be4a515d4a7ccc8b909f5a3f49cd13e27de08344594ef2f436849300b44a138160f10e0314dc7fea24c4b77dc91b5141429e55698720deaf8fdb8085cb48947d48c4ea3638132f7fa89d541ef03d3d0bbfa96c75f9d37348abc75b97a1a6736a23eb36948f4171be655d8de14d7a98c0258521f069c4e"}) openat$ptmx(0xffffffffffffff9c, &(0x7f0000000140), 0x0, 0x0) (async) openat(0xffffffffffffff9c, &(0x7f0000000180)='./cgroup.cpu/cpuset.cpus\x00', 0x0, 0x0) (async) open_by_handle_at(r0, &(0x7f0000000140)=@ceph_nfs_confh={0x10, 0x2, {0x3}}, 0x0) (async) openat(0xffffffffffffff9c, &(0x7f0000000180)='./cgroup.cpu/cpuset.cpus\x00', 0x0, 0x0) (async) open_by_handle_at(r1, &(0x7f0000000140)=@ceph_nfs_confh={0x10, 0x2, {0x3}}, 0x400240) (async) ioctl$TIOCGPTPEER(r1, 0x5441, 0x4) (async) ioctl$TIOCSETD(r0, 0x5423, &(0x7f0000000000)=0xc) (async) openat$sw_sync_info(0xffffffffffffff9c, &(0x7f0000000040), 0x202000, 0x0) (async) openat$damon_kdamond_pid(0xffffffffffffff9c, &(0x7f00000001c0), 0x20000, 0x20) (async) pwritev2(r2, &(0x7f0000000200)=[{&(0x7f0000000500)="563fe831e0a5f468a08662d1b22e7ee61c783fb31562f9f02c9808a37cef674505270d3b1b29a7b2e1b375cd8f8d7ad1f92a0008bc7c90bb13564e357d659ae25eb4f1d18953a0e14778c056c8dbe300cc70cfe2e935451fd65f993e23e35f74f679d7b941a97e12a127a32586799697e8664c5c7110761e8e9ebdb9901f959f1a2de956f5999d7baf8c95b594db393bd0d858c01e06fe221969afbe74d1f736ca4dbb208cbb9b599f01aba3d301095430ce1b796dccdb8ef7eab92a2d525d94ecafff9fd58cb4c74d4988556fbd8799df37380e77fab5048030568efeb136b7d547e9f61e2fd262020b61df72365328614e834f73b2d1cda6427cef083d656e3bb071feade962877c52d929fbda504bf4476b9c451210d8729f503ac6115fd607fe3fcdcc94fc4fb2f6f95b1f4bf8994aa6cb6978417b8e77c6405d5547a84f4dba24c871d1e2a4c2f1b76371d3e72b2336d3c47716cf471817a78cd312127055b38c6d18dd36d6481b1ea385889e3954b63fc11db14d0624ab242121bc17ee67addbd83ae99e20515a4a6513922839e3ee2c21b0295163e9a76702bf4a09c4c00a928d4c78d344a12d42c800de6092d28783615dbf021e70b4c8f798505445e06c5f43470a2aa98af8e28b95670cdbeecdb6bb3e89c6b524fa0d204d6f29d8e8d5093e85d8e79dde9dc55a563997cf2978868f70e649569207c95bb3b332041b171dc6322eaf5d55fa92677a6c4ce4c2e7dae5ba4d5307d8d3b925a1552306e03bbaf209da0a52404e3dbaa72e417ab6e7ea650e5321b91f31795e55b549af0412202587f8f381005174510c3ba5ee16b9a0ef106398f08d20ca0ea8b1fb3e6a0c68b3696c7e70cd7ae85aba52f92fe99467a1cf11ce636f51bf9a93eccea36161f25beac5632fb99a79b4af9b8e111967b69854caa5b177a08fc8cbad7586edd4c0b575510b99dba9fe2fdea24bd6348fed7bc29297aaa33b6b65ac6052560baa40c50adbd1a44513da4f702ee83cac2cc9d154bd29b94848b273ab2a062708d824ab54db047541bab0a1fb87abfab14195284583fa01078e5b3a2c4d6f621ce498124a0c3fe9583eab9c5cbc0863d236908b930ebda6480f25c0bad7003994c187af726f15a051602928e229ef033e194931ecbedf8b8297dd3c6cdee517c29fde0994e1b623c58011ec94a9deabfe886193d759c59ac47d407d8e71a9e19f88b84ed873eb15426649c5e9f9fcef85d6a9adc67a45f00f1eb5af6b1929002d29623435cc61805969acdee58b86194a2ccb6a9c6653dbf6faf8cefb58eadccb3d302869376f67a32e03019bb3d999bdc09837cb449823b08235d242f113a08ac0fd0559f968e0c5c1dff0ed4a9aa70c4b6b5e7758e2f6506a34fc0b881d4fea880403baf2dd7b1492adc505d364e91634f9d5d5a63eee1da9bc70eb054b6c0443cee1a018c79c2e49575c188cdf42e9a045f6d14d2aaf9e203543edb101e8d0327ad795bdb8479f2b9bba27c7b2ef064b7cc53938243a9b5e8076980c01d8d84857ce09d45cbe2948f2337504ad0f8f482e4eefde38482b8edbc4a0c7adf9c21b4e94c187b71b9456e4bbeadb566cc9796d729b2b7bc3e8fc8ceb1b0d00dd2a3fc9b288d1cc853f4dd95cddad93dfe7188f7188578580b1d3c702942f3b8b2b6a51536290e8542d6a4b050aa14601966c2c418c0127fc886e3dacb297f143a6257402a44ab4669d98ddef243b20fc35f162cd17285cd831855c72ddbbeefb09ffa65623db879c91c91ee4979a9936b7a02059ce60a4551ba35a79737b5a52bed6e96f26e03f1a971cd89b1237db80fcf2bf907438c26bd89aae03bd6ae3ebec2a6550d2a2f270c27870a672d5eeae149903ce94bf77008f529e46e42eeebbc82af7d1a13dae66f44c007cfd4306b2196e709c5204d5644c84821e81e566caf3285a795b2ec89086d62b3880a82a7f3052a6e1a37e2eff2ab9179f93eb14eb2d5029dfe1b1cbcd2312246f140a103ff67470b571685c4f1d1c89453bc3c4557ec52123533e7a4b01c3bf5cab72db39138dfd29ac282aacd16de8da76b382e6894eba05b577166a63d13326a6af86761a4fd33a7ce93bc485534748094d3c4e259826989978a8b541de6342fe63d53827d46a43bd77b67e968a981a3c82766573e7c989903dc848841ea5f62c4c141713560eb5b3bf04ef9dcdee1b8c26d76641f9f81989dd18882db78a9c4e5712ef375889dca9b59942daf7747c2f9024d836199cbec1723a8b933d17a419491804efc1ffcc77e02bcc0fb1bcec8149af0bf6e75010b51aa004ada4e09aab6127506a391f2bc685de66b1bc1a19ea8291fbb2aa2a3c9f5bc6ce2bc5733f6646da1b36aa15621806eb662ca488bc7b16e2e9874d437a8ace2685970f50ff4ae8d2549ead1410028c86a6dadd875f23596c9d556122bfb16343bf02b629d2b6cd1f4b60f7c05630303bff66efbc4f33a78cb1b5e3025b0b496f7a115eaf25f69d2c2366b40aaeef1ff95a8809e1f87239ee00a27927ccd3a5cce3e8e28fa2bb82840dd1a029558bb83950b6c1cb588d1d90bb3c8758b2006825a1887abd1357ad220d57a3c60f41e5b54a0e8a2967583c521befdeafadb731522a0cf9db0c16c8c6db7956736b1e65c8552feeb78b20739bd6dad93026adb7fac3e8e84ccf235dc9abfeb678c4497885799e5ca89d058e4d137bd08af2ceb8f5a0de22628deed831a694b679befc165b5620ca0b586d5401a2452e7bb7a0c76de0b32c20860081c8fc57f8ea957e6032730a192ed2e4b1b3c67cf8266f3fca1c0d7c051608084ed89cf0fb43c53edf636e781a55bcbdcab94d9b89d7a208fcfe5f118b5ed15a44e68226269973c468998c979ba4eae8baf3abe987d85eec6a6afa1d48658d6b4d73018ea0a3d4f5fd529e51d0bd06563e690d5b8ca5decda2229d22eae871071494aa0a10c2d59b3b2daaf5d0c3c66193fb48a67e3c6087ea9bf72972cc27cb2d747aef59216c256eafe9b4a413178e8d2e3ac342e004a8e7ae4c74d4e4e3d8358aae2de88fe4e5b1a79791d704d8f5fac30aa5f6cf02a16101b33029f9f6f5177e846c05ad33a767fbd098529e911d13b067c031743a3136a2ef94386f25a18658f16445fbf397cc937c916f18a2cfb08dbfe4a709a0af1f64e017ebb4d9330b021e009b24edf51d30ceca971e008b9a4a8b471a38e22005ad8f33ec59bc0397e5f0f7b1ecefa9f3632a049a48dae73d2d6dd069a02341eaee309be89aeed3ba0e9158fe98dbea731045d8a5a889e6d7eac863b05f543738bc55557aa273d3768ac9051ce2d60f08a1898ddf3a1b1893c64a8d0c6ccd1f0ab63f09a4f6b9638eb761fdb02c2c7f814524000a6a3e61b92e17f31726f412f25298cb4446cf9a129affdbed986bbde237640d3f2d720168f0c736859b8f4d0a532f124eeb5b8517081bae6c0511e857ac0f3d5a91513247326d621bb26464fa9207c9735fb45ae4ef2abe349c93a0f98cd1dd4bc38f983d5d33ca956ba8ab918f7c65dd3e3b00995b8b755c6c52193598033cbf89ba68801f7dee8a8df2a6ebbe0ff02d250dd9bc41de41c0d935f97c5ccd593f44c610043a2b1e73688cb717d316572421485cb0398465bafe1f83745ef84acaba7fa087818b897f6ed7a607808d4aeeadb1d8bf74dac4a6759e339ba6356fab37603d8dc32552dcbfead30d68b314ebb09460fe16ec7026803036b8974ddaae8fde745739a0e9d60e1896ea7b626d6597d58bd4babcb797eb1bf26490a468894a9d0d0420f68c81cb650ddf805a4ff5b134869513fad8f85b37ca7ab54800d5154cee8160ae99eacc8dfc834ed58109825c7fa7c222c78388d8d314e347abdc8bed42881eb36d9e38447a4e4500a6c22f9bc423ec8a1c597a505a5229205469b63336c3a40181455f0db41ae8c92c35b67ed1e6048c839bbe355aa1bb56628fbe42218a23010fb6fb0a6b9c6bf006c964e64d69f59f711967ff584a9465866fc7f1f8e96f1d2c6e5bae3ee85475e3fea4ee8ba2a58126ad6c63f5d7d54b2569ef384b224abcf5fd8996a3e12ada21c8673af7237dbbd73ecc69de36386c4e5cc597d18d6ce656114ac21a24e83236759c639983e8929f81b1f88ca72f540815ef7dad769c1e6d16eb2354afbae61f0bfc1e1397cd26126e57db6eaf680d398911c9c84ddfa00744c67a4280b9bfedf68f79daa5e25e5fc5174c0e41a84edfec48e415adbeb639ed789aca26acae8bf2ab2600dd88f9a0050af527b2b3533fd3343004b5eb2310b7e9c75bae823b6f3fc53b4b3fdf526d87574765602a2624be87e8c6045467a73600232feca884c9c144192610b4e235ac4a9b04f76d493cc958fd24aa9cc034dcc21291e8c6f942c4abc78a5474e57a98c174e3d7eb91356cb80c6eaa20930bb4a0124fb3e6c6784a77c8f48c008c7cce328313ffaf841a668f783f324f9b2f3fcb8380b24d8f916fa521480b11d2a15430ce36781c32fdf1f53dea1a0e72120d5958ff0d357a42b5c7c73c215160c4e3b41ebefbe42991566b3aabd7bd2002d2592be9d6627df8e91d71c8de3a50c78874fc32d9ce946d7dd503d01446cb346edead368aa415b477c2d3b8d06a754d25096aff5aca1538d58fb92a21d3147a6c6a17d5a70c0249f007bbc517afc31b6befb44211f68211848bb3bdabed783d391553cbb336ac30a61a069088271cea300ed4371234546155af86a245c421806ef0c4ea4af7130b6b651d201035b91aaf2d1c65bb081a63f8f7e18b2f55f62bd9a6758ecca118c6ebeb8af37337a32fcaeafab40a094955378c9852188e104278d99d1f7ff0b54d7e4cdce135d1c0b5973f23ce1417d3ff58609d0bb8283d41fc036fb68bee0031a1df80df8f9c351f7e714e2fd5585ae432ee12e987dd465d4d7958ffe9d605f1f891635e2992945ecf3b37612142b1d9be81efff35c49062124a8e201a0c040a0ae06f86b8a7e54de6666b5566dfac2ba4f56f4955eed78c38495e19b941ea2034f4a351f747e683d247d8c73eb4458b5bbad008a5b8b707e1e53134fcd1e478a0fd66599f0a4d3e5486249573021598788a30b44e3e610963cbd8fae3c1bf470d7cb0632a3f64268b6418779d9e37e73f9b69d20c334570037789cae7f6785a283443206a81c27e82210bd5b9f3c5d64ed4b18f47dbdeda2fed1ae75d8fd30a9950b3a907fac4bc8c13de958cc82c7fa67b71867ef5069d77a9d00b940e5a98aa20ebf1809da3d60270e647a11c236ceaad4e2b0023a7eac091c002169cd0a55bfae39fea135a1490d18d57af6df06c8070d096adc5c2d42a53bceaafb1d3207ee0c9fa100865e593e081073c4d09f5ff47cb89952ab9f3a63e66788be02162f26b31919ab6b3ba4157085afde3d2408c6e9f7a0e174ab9dcfd30ae2abbad2fa9cc83ae42f67f3f7bdd170a03913e614ea3cd7aa06b3ebb1d02bdaf3988b78d5b4c43011fc48b8613cdca33c5f8f995d7c6a6d1373fbad091a239c084a0e728eefa618182cf4fb15fb7b99ac16908fce6dcf1ef0ee3bffc93d6ecbe0b65236bf0556439b663c60ee803242d1bb1f029ba20f2f96d287b32ad51fd288da0d398e4c39c81bc3710b5ca930e8c14af71528f8cac1a4776c97d7c77ffb3e8b9e30f5774a0c262a45271d5ba46ca0c5ff10732f44dfb2efb56d2ed2df00c4764ba6eb95c5206676e7a59134d21d00183b02c811ceb81234e4962e803960cf63c7faad57f275b26ca4a3864f56e3cd0e5c554500555b96ee114", 0x1000}], 0x1, 0x4, 0x800, 0x2) (async) ioctl$BINDER_WRITE_READ(r0, 0xc0306201, &(0x7f0000000440)={0x9c, 0x0, &(0x7f00000002c0)=[@transaction={0x40406300, {0x2, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x58, 0x18, &(0x7f0000000080)=ANY=[@ANYBLOB="85616466000000000500000000000000010000000000000026000000000000008561646600000000020007000000000002000000000000003300000000000000852a6877081100000300"/88], &(0x7f0000000100)={0x0, 0x20, 0x40}}}, @reply_sg={0x40486312, {0x1, 0x0, 0x0, 0x0, 0x20, 0x0, 0x0, 0x50, 0x18, &(0x7f0000000480)={@fda={0x66646185, 0x8, 0x1, 0x31}, @flat=@binder={0x73622a85, 0x1101}, @fd={0x66642a85, 0x0, r0}}, &(0x7f0000000280)={0x0, 0x20, 0x38}}, 0x40}, @dead_binder_done], 0x93, 0x0, &(0x7f0000000380)="355f3a3ea2f8f4157c72b5bf7d95a527122f9e3bb84ac7b5a37a62215be4a515d4a7ccc8b909f5a3f49cd13e27de08344594ef2f436849300b44a138160f10e0314dc7fea24c4b77dc91b5141429e55698720deaf8fdb8085cb48947d48c4ea3638132f7fa89d541ef03d3d0bbfa96c75f9d37348abc75b97a1a6736a23eb36948f4171be655d8de14d7a98c0258521f069c4e"}) (async) [ 169.946069][ T4160] x_tables: unsorted underflow at hook 4 00:02:49 executing program 3: r0 = openat$snapshot(0xffffffffffffff9c, &(0x7f0000000000), 0x1, 0x0) ioctl$SNAPSHOT_S2RAM(r0, 0x330b) r1 = socket$inet_tcp(0x2, 0x1, 0x0) setsockopt$ARPT_SO_SET_REPLACE(r1, 0x0, 0x60, &(0x7f0000000440)={'filter\x00', 0x11, 0x4, 0x3f0, 0x0, 0x0, 0x200, 0x308, 0x308, 0x308, 0x7fffffe, 0x0, {[{{@arp={@remote, @broadcast, 0x0, 0x0, 0x0, 0x0, {@mac=@link_local={0x2}}, {@mac}, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 'bridge0\x00', 'erspan0\x00'}, 0xc0, 0x100}, @unspec=@RATEEST={0x40, 'RATEEST\x00', 0x0, {'syz1\x00'}}}, {{@uncond, 0xc0, 0x100}, @unspec=@RATEEST={0x40, 'RATEEST\x00', 0x0, {'syz0\x00'}}}, {{@arp={@multicast1, @initdev={0xac, 0x1e, 0x0, 0x0}, 0x0, 0x0, 0x0, 0x0, {@mac=@link_local}, {@mac=@multicast}, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 'veth0_vlan\x00', 'ipvlan1\x00'}, 0xc0, 0x108}, @unspec=@IDLETIMER={0x48, 'IDLETIMER\x00', 0x0, {0x0, 'syz0\x00'}}}], {{'\x00', 0xc0, 0xe8}, {0x28, '\x00', 0x2}}}}, 0x440) read$snapshot(r0, &(0x7f0000000140)=""/164, 0xa4) ioctl$NS_GET_OWNER_UID(0xffffffffffffffff, 0xb704, &(0x7f0000000080)=0x0) setsockopt$IPT_SO_SET_REPLACE(r1, 0x0, 0x40, &(0x7f0000000880)=@filter={'filter\x00', 0xe, 0x4, 0x358, 0xffffffff, 0x1f8, 0x0, 0xd8, 0xffffffff, 0xffffffff, 0x2c0, 0x2c0, 0x2c0, 0xffffffff, 0x4, &(0x7f0000000100), {[{{@uncond, 0x0, 0xb0, 0xd8, 0x0, {}, [@common=@set={{0x40}, {{0x1, [0x6, 0xf, 0x1, 0x2, 0x4, 0x1], 0x6}}}]}, @common=@inet=@SYNPROXY={0x28, 'SYNPROXY\x00', 0x0, {0x2, 0x80, 0xf747}}}, {{@ip={@multicast1, @broadcast, 0xffffffff, 0xff, 'batadv_slave_0\x00', 'xfrm0\x00', {}, {}, 0x84, 0x2, 0x1c}, 0x0, 0xc0, 0x120, 0x0, {}, [@common=@socket0={{0x20}}, @common=@addrtype={{0x30}, {0x100, 0x40}}]}, @common=@SET={0x60, 'SET\x00', 0x0, {{0x0, [0x6, 0x4, 0x0, 0x0, 0x1, 0x4], 0x1}, {0x3, [0x0, 0x3, 0x0, 0x4, 0x5, 0x2], 0x0, 0x4}}}}, {{@ip={@empty, @local, 0xff, 0x0, 'veth0_to_hsr\x00', 'dummy0\x00', {0xff}, {}, 0x29, 0x3, 0x40}, 0x0, 0xa0, 0xc8, 0x0, {}, [@common=@addrtype={{0x30}, {0x121, 0x80, 0x1}}]}, @common=@unspec=@CLASSIFY={0x28, 'CLASSIFY\x00', 0x0, {0x6}}}], {{'\x00', 0x0, 0x70, 0x98}, {0x28}}}}, 0x3b8) r3 = openat$procfs(0xffffffffffffff9c, &(0x7f0000000200)='/proc/asound/seq/clients\x00', 0x0, 0x0) setsockopt$IP_VS_SO_SET_DELDEST(r3, 0x0, 0x488, &(0x7f0000000240)={{0x29, @empty, 0x4e21, 0x2, 'sh\x00', 0x18, 0x60a, 0x23}, {@multicast1, 0x4e22, 0x10000, 0x8, 0x80000000, 0x3}}, 0x44) fsetxattr$security_capability(r1, &(0x7f0000000040), &(0x7f00000000c0)=@v3={0x3000000, [{0x4, 0x7fffffff}, {0x0, 0x928}], r2}, 0x18, 0x3) openat$snapshot(0xffffffffffffff9c, &(0x7f0000000000), 0x1, 0x0) (async) ioctl$SNAPSHOT_S2RAM(r0, 0x330b) (async) socket$inet_tcp(0x2, 0x1, 0x0) (async) setsockopt$ARPT_SO_SET_REPLACE(r1, 0x0, 0x60, &(0x7f0000000440)={'filter\x00', 0x11, 0x4, 0x3f0, 0x0, 0x0, 0x200, 0x308, 0x308, 0x308, 0x7fffffe, 0x0, {[{{@arp={@remote, @broadcast, 0x0, 0x0, 0x0, 0x0, {@mac=@link_local={0x2}}, {@mac}, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 'bridge0\x00', 'erspan0\x00'}, 0xc0, 0x100}, @unspec=@RATEEST={0x40, 'RATEEST\x00', 0x0, {'syz1\x00'}}}, {{@uncond, 0xc0, 0x100}, @unspec=@RATEEST={0x40, 'RATEEST\x00', 0x0, {'syz0\x00'}}}, {{@arp={@multicast1, @initdev={0xac, 0x1e, 0x0, 0x0}, 0x0, 0x0, 0x0, 0x0, {@mac=@link_local}, {@mac=@multicast}, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 'veth0_vlan\x00', 'ipvlan1\x00'}, 0xc0, 0x108}, @unspec=@IDLETIMER={0x48, 'IDLETIMER\x00', 0x0, {0x0, 'syz0\x00'}}}], {{'\x00', 0xc0, 0xe8}, {0x28, '\x00', 0x2}}}}, 0x440) (async) read$snapshot(r0, &(0x7f0000000140)=""/164, 0xa4) (async) ioctl$NS_GET_OWNER_UID(0xffffffffffffffff, 0xb704, &(0x7f0000000080)) (async) setsockopt$IPT_SO_SET_REPLACE(r1, 0x0, 0x40, &(0x7f0000000880)=@filter={'filter\x00', 0xe, 0x4, 0x358, 0xffffffff, 0x1f8, 0x0, 0xd8, 0xffffffff, 0xffffffff, 0x2c0, 0x2c0, 0x2c0, 0xffffffff, 0x4, &(0x7f0000000100), {[{{@uncond, 0x0, 0xb0, 0xd8, 0x0, {}, [@common=@set={{0x40}, {{0x1, [0x6, 0xf, 0x1, 0x2, 0x4, 0x1], 0x6}}}]}, @common=@inet=@SYNPROXY={0x28, 'SYNPROXY\x00', 0x0, {0x2, 0x80, 0xf747}}}, {{@ip={@multicast1, @broadcast, 0xffffffff, 0xff, 'batadv_slave_0\x00', 'xfrm0\x00', {}, {}, 0x84, 0x2, 0x1c}, 0x0, 0xc0, 0x120, 0x0, {}, [@common=@socket0={{0x20}}, @common=@addrtype={{0x30}, {0x100, 0x40}}]}, @common=@SET={0x60, 'SET\x00', 0x0, {{0x0, [0x6, 0x4, 0x0, 0x0, 0x1, 0x4], 0x1}, {0x3, [0x0, 0x3, 0x0, 0x4, 0x5, 0x2], 0x0, 0x4}}}}, {{@ip={@empty, @local, 0xff, 0x0, 'veth0_to_hsr\x00', 'dummy0\x00', {0xff}, {}, 0x29, 0x3, 0x40}, 0x0, 0xa0, 0xc8, 0x0, {}, [@common=@addrtype={{0x30}, {0x121, 0x80, 0x1}}]}, @common=@unspec=@CLASSIFY={0x28, 'CLASSIFY\x00', 0x0, {0x6}}}], {{'\x00', 0x0, 0x70, 0x98}, {0x28}}}}, 0x3b8) (async) openat$procfs(0xffffffffffffff9c, &(0x7f0000000200)='/proc/asound/seq/clients\x00', 0x0, 0x0) (async) setsockopt$IP_VS_SO_SET_DELDEST(r3, 0x0, 0x488, &(0x7f0000000240)={{0x29, @empty, 0x4e21, 0x2, 'sh\x00', 0x18, 0x60a, 0x23}, {@multicast1, 0x4e22, 0x10000, 0x8, 0x80000000, 0x3}}, 0x44) (async) fsetxattr$security_capability(r1, &(0x7f0000000040), &(0x7f00000000c0)=@v3={0x3000000, [{0x4, 0x7fffffff}, {0x0, 0x928}], r2}, 0x18, 0x3) (async) [ 169.953375][ T4163] x_tables: unsorted underflow at hook 4 [ 169.971645][ T4162] loop2: detected capacity change from 0 to 8226 [ 169.982097][ T4186] random: crng reseeded on system resumption [ 169.995670][ T4182] x_tables: unsorted underflow at hook 4 00:02:49 executing program 4: r0 = socket$netlink(0x10, 0x3, 0x4) (async) r1 = socket(0x10, 0x803, 0x0) sendmsg$nl_route_sched(r1, &(0x7f0000000a00)={0x0, 0x0, &(0x7f00000009c0)={0x0, 0x68}}, 0x0) (async) getsockname$packet(r1, &(0x7f0000000200)={0x11, 0x0, 0x0, 0x1, 0x0, 0x6, @broadcast}, &(0x7f00000000c0)=0x14) sendmsg$nl_route(r0, &(0x7f0000000040)={0x0, 0x0, &(0x7f0000000000)={&(0x7f0000000140)=ANY=[@ANYRES16=r2, @ANYRES32=r2, @ANYBLOB="0000000000000000280012000900010076657468"], 0x48}}, 0x0) (async) sendmsg$nl_route_sched(0xffffffffffffffff, &(0x7f00000002c0)={0x0, 0x0, &(0x7f0000000280)={&(0x7f0000000340)=ANY=[@ANYBLOB="3000000024000b0f00"/20, @ANYRES32=r2, @ANYBLOB="cde20000ffffffff00007680337b0100696e6772657373007efac025c34690194347a44b9071a4fb0d101f898983b5c0aa43aa2c1cbec392e31a67a65a820cd8b8216d3bd2d6000000003278a0117b1811038e85367138941a"], 0x30}}, 0x0) (async) ioctl$SIOCGETVIFCNT(0xffffffffffffffff, 0x89e0, &(0x7f0000000080)={0xffffffffffffffff}) (async) r3 = socket$netlink(0x10, 0x3, 0x0) (async) r4 = socket(0x10, 0x803, 0x0) sendmsg$IPSET_CMD_LIST(r4, &(0x7f00000005c0)={0x0, 0x0, &(0x7f0000000580)={0x0, 0x14}}, 0x0) getsockname$packet(r4, &(0x7f0000000380)={0x11, 0x0, 0x0, 0x1, 0x0, 0x6, @broadcast}, &(0x7f0000000200)=0x14) sendmsg$nl_route(r3, &(0x7f0000000040)={0x0, 0x0, &(0x7f0000000000)={&(0x7f00000008c0)=ANY=[@ANYBLOB="480000001000050700"/20, @ANYRES32=r5, @ANYBLOB="0000000000000000280012000c00010076657468"], 0x48}}, 0x0) (async) sendmsg$nl_route_sched(0xffffffffffffffff, &(0x7f0000000040)={0x0, 0x0, &(0x7f0000000100)={&(0x7f0000000080)=ANY=[@ANYBLOB="9c5e000900000000e10c0400003aff", @ANYRES32=r5, @ANYBLOB="00000000f1ffffff000000000b000100636c736163740000"], 0x30}}, 0x0) (async) sendmsg$nl_route_sched(0xffffffffffffffff, &(0x7f0000000280)={0x0, 0x0, &(0x7f0000000240)={&(0x7f00000003c0)=@delchain={0x24, 0x29, 0xd3d, 0x0, 0x0, {0x0, 0x0, 0x0, r5, {0xfff2, 0xffff}}}, 0x24}}, 0x0) (async) sendmsg$nl_route_sched(0xffffffffffffffff, &(0x7f0000000600)={&(0x7f0000000540)={0x10, 0x0, 0x0, 0x800}, 0xc, &(0x7f00000005c0)={&(0x7f0000000580)=@delchain={0x2c, 0x65, 0x2, 0x70bd26, 0x25dfdbfc, {0x0, 0x0, 0x0, r5, {0xffe0, 0x9}, {0xfff2, 0x9}, {0x8, 0x3}}, [@TCA_RATE={0x6, 0x5, {0x5, 0xff}}]}, 0x2c}, 0x1, 0x0, 0x0, 0x80}, 0x24000000) (async) sendmsg$nl_route_sched(0xffffffffffffffff, &(0x7f0000000300)={0x0, 0x0, &(0x7f0000000180)={&(0x7f0000000640)=@deltclass={0x5c, 0x29, 0x2, 0x70bd25, 0x25dfdbfc, {0x0, 0x0, 0x0, 0x0, {0xffe0, 0xfff2}, {0x8}, {0x0, 0xb}}, [@TCA_RATE={0x6, 0x5, {0x80, 0x6}}, @TCA_RATE={0x6, 0x5, {0x9, 0x81}}, @TCA_RATE={0x6, 0x5, {0x9, 0x1}}, @tclass_kind_options=@c_skbprio={0xc}, @TCA_RATE={0x6, 0x5, {0x7f, 0x20}}, @tclass_kind_options=@c_skbprio={0xc}]}, 0x5c}}, 0x0) r6 = socket$netlink(0x10, 0x3, 0x0) (async) r7 = openat$proc_capi20ncci(0xffffffffffffff9c, &(0x7f0000000100), 0x101080, 0x0) getsockopt$EBT_SO_GET_INIT_ENTRIES(r7, 0x0, 0x83, &(0x7f00000004c0)={'filter\x00', 0x0, 0x4, 0x19, [0x10001, 0x100, 0xeaf, 0x8, 0x0, 0x6], 0x6, &(0x7f0000000440)=[{}, {}, {}, {}, {}, {}], &(0x7f00000001c0)=""/25}, &(0x7f0000000240)=0x78) (async) sendmmsg(r6, &(0x7f00000002c0), 0x40000000000009f, 0x0) [ 170.015205][ T4186] x_tables: unsorted underflow at hook 4 00:02:50 executing program 2: bpf$BPF_PROG_RAW_TRACEPOINT_LOAD(0x5, &(0x7f0000000040)={0x1f, 0x4, &(0x7f0000000000)=@framed={{}, [@ldst={0x3, 0x0, 0x3, 0xa, 0x0, 0xfffffffffffffff8}]}, &(0x7f00000000c0)='syzkaller\x00', 0x5, 0xf3, &(0x7f0000000680)=""/243, 0x0, 0x13, '\x00', 0x0, 0x0, 0xffffffffffffffff, 0x8, 0x0, 0x0, 0x10, 0x0}, 0x80) r0 = openat(0xffffffffffffff9c, &(0x7f0000000180)='./cgroup.cpu/cpuset.cpus\x00', 0x0, 0x0) r1 = openat(0xffffffffffffff9c, &(0x7f0000000180)='./cgroup.cpu/cpuset.cpus\x00', 0x0, 0x0) socket(0x9, 0x3, 0xffff) open_by_handle_at(r1, &(0x7f0000000140)=@ceph_nfs_confh={0x10, 0x2, {0x3}}, 0x0) bpf$PROG_LOAD_XDP(0x5, &(0x7f00000003c0)={0x6, 0x5, &(0x7f0000000280)=@framed={{0x18, 0x0, 0x0, 0x0, 0x2}, [@initr0={0x18, 0x0, 0x0, 0x0, 0x8, 0x0, 0x0, 0x0, 0x6}]}, &(0x7f00000002c0)='GPL\x00', 0x800, 0x0, 0x0, 0x41000, 0x12, '\x00', 0x0, 0x25, r1, 0x8, &(0x7f0000000300)={0x8, 0x5}, 0x8, 0x10, &(0x7f0000000340)={0x2, 0x1, 0x9, 0x200}, 0x10, 0x0, 0x0, 0x0, &(0x7f0000000380)=[0x1]}, 0x80) open_by_handle_at(r0, &(0x7f0000000140)=ANY=[@ANYBLOB="1008000002020000030000ddffffff000000000000000000"], 0x0) bpf$MAP_GET_NEXT_KEY(0x4, &(0x7f0000000240)={r0, &(0x7f0000000100)="204e04d517db538d4a1e5832c464ee941e82c25a5b4b1babf529e5dffa68b0335603eda2c1085e2a000e5653b4c6cb6520e204d075bd022c35b6cf8736785f823a9f42b0b9473b5c12f919bd4a5e657d898a11a4d8914952d95d7efe0e7584305d22b7dddb6a80146cf1f33f5bd30220ec35d6f517bb6bf272498458a703e0e18a4990774a9ff47b4cdb9d2abb187e0ba8feabf8a3fd47d444dd0104edaf153e9850e5974d0cf09d729539bf75d737b5dcffc2f043a5db65bb8a072b02b773f17c981007a502c8d87e62f601a7942f1f54f77e7e58a1ffac79fbfba4b767b45ca3c88158fbfe4e1cefd4d95a92d325738089acef920dd049", &(0x7f0000000200)=""/3}, 0x20) 00:02:50 executing program 0: openat$ptmx(0xffffffffffffff9c, &(0x7f0000000140), 0x0, 0x0) (async, rerun: 64) r0 = openat(0xffffffffffffff9c, &(0x7f0000000180)='./cgroup.cpu/cpuset.cpus\x00', 0x0, 0x0) (rerun: 64) open_by_handle_at(r0, &(0x7f0000000140)=@ceph_nfs_confh={0x10, 0x2, {0x3}}, 0x0) r1 = openat(0xffffffffffffff9c, &(0x7f0000000180)='./cgroup.cpu/cpuset.cpus\x00', 0x0, 0x0) open_by_handle_at(r1, &(0x7f0000000140)=@ceph_nfs_confh={0x10, 0x2, {0x3}}, 0x400240) (async) r2 = ioctl$TIOCGPTPEER(r1, 0x5441, 0x4) (async, rerun: 32) ioctl$TIOCSETD(r0, 0x5423, &(0x7f0000000000)=0xc) (rerun: 32) openat$sw_sync_info(0xffffffffffffff9c, &(0x7f0000000040), 0x202000, 0x0) (async) openat$damon_kdamond_pid(0xffffffffffffff9c, &(0x7f00000001c0), 0x20000, 0x20) pwritev2(r2, &(0x7f0000000200)=[{&(0x7f0000000500)="563fe831e0a5f468a08662d1b22e7ee61c783fb31562f9f02c9808a37cef674505270d3b1b29a7b2e1b375cd8f8d7ad1f92a0008bc7c90bb13564e357d659ae25eb4f1d18953a0e14778c056c8dbe300cc70cfe2e935451fd65f993e23e35f74f679d7b941a97e12a127a32586799697e8664c5c7110761e8e9ebdb9901f959f1a2de956f5999d7baf8c95b594db393bd0d858c01e06fe221969afbe74d1f736ca4dbb208cbb9b599f01aba3d301095430ce1b796dccdb8ef7eab92a2d525d94ecafff9fd58cb4c74d4988556fbd8799df37380e77fab5048030568efeb136b7d547e9f61e2fd262020b61df72365328614e834f73b2d1cda6427cef083d656e3bb071feade962877c52d929fbda504bf4476b9c451210d8729f503ac6115fd607fe3fcdcc94fc4fb2f6f95b1f4bf8994aa6cb6978417b8e77c6405d5547a84f4dba24c871d1e2a4c2f1b76371d3e72b2336d3c47716cf471817a78cd312127055b38c6d18dd36d6481b1ea385889e3954b63fc11db14d0624ab242121bc17ee67addbd83ae99e20515a4a6513922839e3ee2c21b0295163e9a76702bf4a09c4c00a928d4c78d344a12d42c800de6092d28783615dbf021e70b4c8f798505445e06c5f43470a2aa98af8e28b95670cdbeecdb6bb3e89c6b524fa0d204d6f29d8e8d5093e85d8e79dde9dc55a563997cf2978868f70e649569207c95bb3b332041b171dc6322eaf5d55fa92677a6c4ce4c2e7dae5ba4d5307d8d3b925a1552306e03bbaf209da0a52404e3dbaa72e417ab6e7ea650e5321b91f31795e55b549af0412202587f8f381005174510c3ba5ee16b9a0ef106398f08d20ca0ea8b1fb3e6a0c68b3696c7e70cd7ae85aba52f92fe99467a1cf11ce636f51bf9a93eccea36161f25beac5632fb99a79b4af9b8e111967b69854caa5b177a08fc8cbad7586edd4c0b575510b99dba9fe2fdea24bd6348fed7bc29297aaa33b6b65ac6052560baa40c50adbd1a44513da4f702ee83cac2cc9d154bd29b94848b273ab2a062708d824ab54db047541bab0a1fb87abfab14195284583fa01078e5b3a2c4d6f621ce498124a0c3fe9583eab9c5cbc0863d236908b930ebda6480f25c0bad7003994c187af726f15a051602928e229ef033e194931ecbedf8b8297dd3c6cdee517c29fde0994e1b623c58011ec94a9deabfe886193d759c59ac47d407d8e71a9e19f88b84ed873eb15426649c5e9f9fcef85d6a9adc67a45f00f1eb5af6b1929002d29623435cc61805969acdee58b86194a2ccb6a9c6653dbf6faf8cefb58eadccb3d302869376f67a32e03019bb3d999bdc09837cb449823b08235d242f113a08ac0fd0559f968e0c5c1dff0ed4a9aa70c4b6b5e7758e2f6506a34fc0b881d4fea880403baf2dd7b1492adc505d364e91634f9d5d5a63eee1da9bc70eb054b6c0443cee1a018c79c2e49575c188cdf42e9a045f6d14d2aaf9e203543edb101e8d0327ad795bdb8479f2b9bba27c7b2ef064b7cc53938243a9b5e8076980c01d8d84857ce09d45cbe2948f2337504ad0f8f482e4eefde38482b8edbc4a0c7adf9c21b4e94c187b71b9456e4bbeadb566cc9796d729b2b7bc3e8fc8ceb1b0d00dd2a3fc9b288d1cc853f4dd95cddad93dfe7188f7188578580b1d3c702942f3b8b2b6a51536290e8542d6a4b050aa14601966c2c418c0127fc886e3dacb297f143a6257402a44ab4669d98ddef243b20fc35f162cd17285cd831855c72ddbbeefb09ffa65623db879c91c91ee4979a9936b7a02059ce60a4551ba35a79737b5a52bed6e96f26e03f1a971cd89b1237db80fcf2bf907438c26bd89aae03bd6ae3ebec2a6550d2a2f270c27870a672d5eeae149903ce94bf77008f529e46e42eeebbc82af7d1a13dae66f44c007cfd4306b2196e709c5204d5644c84821e81e566caf3285a795b2ec89086d62b3880a82a7f3052a6e1a37e2eff2ab9179f93eb14eb2d5029dfe1b1cbcd2312246f140a103ff67470b571685c4f1d1c89453bc3c4557ec52123533e7a4b01c3bf5cab72db39138dfd29ac282aacd16de8da76b382e6894eba05b577166a63d13326a6af86761a4fd33a7ce93bc485534748094d3c4e259826989978a8b541de6342fe63d53827d46a43bd77b67e968a981a3c82766573e7c989903dc848841ea5f62c4c141713560eb5b3bf04ef9dcdee1b8c26d76641f9f81989dd18882db78a9c4e5712ef375889dca9b59942daf7747c2f9024d836199cbec1723a8b933d17a419491804efc1ffcc77e02bcc0fb1bcec8149af0bf6e75010b51aa004ada4e09aab6127506a391f2bc685de66b1bc1a19ea8291fbb2aa2a3c9f5bc6ce2bc5733f6646da1b36aa15621806eb662ca488bc7b16e2e9874d437a8ace2685970f50ff4ae8d2549ead1410028c86a6dadd875f23596c9d556122bfb16343bf02b629d2b6cd1f4b60f7c05630303bff66efbc4f33a78cb1b5e3025b0b496f7a115eaf25f69d2c2366b40aaeef1ff95a8809e1f87239ee00a27927ccd3a5cce3e8e28fa2bb82840dd1a029558bb83950b6c1cb588d1d90bb3c8758b2006825a1887abd1357ad220d57a3c60f41e5b54a0e8a2967583c521befdeafadb731522a0cf9db0c16c8c6db7956736b1e65c8552feeb78b20739bd6dad93026adb7fac3e8e84ccf235dc9abfeb678c4497885799e5ca89d058e4d137bd08af2ceb8f5a0de22628deed831a694b679befc165b5620ca0b586d5401a2452e7bb7a0c76de0b32c20860081c8fc57f8ea957e6032730a192ed2e4b1b3c67cf8266f3fca1c0d7c051608084ed89cf0fb43c53edf636e781a55bcbdcab94d9b89d7a208fcfe5f118b5ed15a44e68226269973c468998c979ba4eae8baf3abe987d85eec6a6afa1d48658d6b4d73018ea0a3d4f5fd529e51d0bd06563e690d5b8ca5decda2229d22eae871071494aa0a10c2d59b3b2daaf5d0c3c66193fb48a67e3c6087ea9bf72972cc27cb2d747aef59216c256eafe9b4a413178e8d2e3ac342e004a8e7ae4c74d4e4e3d8358aae2de88fe4e5b1a79791d704d8f5fac30aa5f6cf02a16101b33029f9f6f5177e846c05ad33a767fbd098529e911d13b067c031743a3136a2ef94386f25a18658f16445fbf397cc937c916f18a2cfb08dbfe4a709a0af1f64e017ebb4d9330b021e009b24edf51d30ceca971e008b9a4a8b471a38e22005ad8f33ec59bc0397e5f0f7b1ecefa9f3632a049a48dae73d2d6dd069a02341eaee309be89aeed3ba0e9158fe98dbea731045d8a5a889e6d7eac863b05f543738bc55557aa273d3768ac9051ce2d60f08a1898ddf3a1b1893c64a8d0c6ccd1f0ab63f09a4f6b9638eb761fdb02c2c7f814524000a6a3e61b92e17f31726f412f25298cb4446cf9a129affdbed986bbde237640d3f2d720168f0c736859b8f4d0a532f124eeb5b8517081bae6c0511e857ac0f3d5a91513247326d621bb26464fa9207c9735fb45ae4ef2abe349c93a0f98cd1dd4bc38f983d5d33ca956ba8ab918f7c65dd3e3b00995b8b755c6c52193598033cbf89ba68801f7dee8a8df2a6ebbe0ff02d250dd9bc41de41c0d935f97c5ccd593f44c610043a2b1e73688cb717d316572421485cb0398465bafe1f83745ef84acaba7fa087818b897f6ed7a607808d4aeeadb1d8bf74dac4a6759e339ba6356fab37603d8dc32552dcbfead30d68b314ebb09460fe16ec7026803036b8974ddaae8fde745739a0e9d60e1896ea7b626d6597d58bd4babcb797eb1bf26490a468894a9d0d0420f68c81cb650ddf805a4ff5b134869513fad8f85b37ca7ab54800d5154cee8160ae99eacc8dfc834ed58109825c7fa7c222c78388d8d314e347abdc8bed42881eb36d9e38447a4e4500a6c22f9bc423ec8a1c597a505a5229205469b63336c3a40181455f0db41ae8c92c35b67ed1e6048c839bbe355aa1bb56628fbe42218a23010fb6fb0a6b9c6bf006c964e64d69f59f711967ff584a9465866fc7f1f8e96f1d2c6e5bae3ee85475e3fea4ee8ba2a58126ad6c63f5d7d54b2569ef384b224abcf5fd8996a3e12ada21c8673af7237dbbd73ecc69de36386c4e5cc597d18d6ce656114ac21a24e83236759c639983e8929f81b1f88ca72f540815ef7dad769c1e6d16eb2354afbae61f0bfc1e1397cd26126e57db6eaf680d398911c9c84ddfa00744c67a4280b9bfedf68f79daa5e25e5fc5174c0e41a84edfec48e415adbeb639ed789aca26acae8bf2ab2600dd88f9a0050af527b2b3533fd3343004b5eb2310b7e9c75bae823b6f3fc53b4b3fdf526d87574765602a2624be87e8c6045467a73600232feca884c9c144192610b4e235ac4a9b04f76d493cc958fd24aa9cc034dcc21291e8c6f942c4abc78a5474e57a98c174e3d7eb91356cb80c6eaa20930bb4a0124fb3e6c6784a77c8f48c008c7cce328313ffaf841a668f783f324f9b2f3fcb8380b24d8f916fa521480b11d2a15430ce36781c32fdf1f53dea1a0e72120d5958ff0d357a42b5c7c73c215160c4e3b41ebefbe42991566b3aabd7bd2002d2592be9d6627df8e91d71c8de3a50c78874fc32d9ce946d7dd503d01446cb346edead368aa415b477c2d3b8d06a754d25096aff5aca1538d58fb92a21d3147a6c6a17d5a70c0249f007bbc517afc31b6befb44211f68211848bb3bdabed783d391553cbb336ac30a61a069088271cea300ed4371234546155af86a245c421806ef0c4ea4af7130b6b651d201035b91aaf2d1c65bb081a63f8f7e18b2f55f62bd9a6758ecca118c6ebeb8af37337a32fcaeafab40a094955378c9852188e104278d99d1f7ff0b54d7e4cdce135d1c0b5973f23ce1417d3ff58609d0bb8283d41fc036fb68bee0031a1df80df8f9c351f7e714e2fd5585ae432ee12e987dd465d4d7958ffe9d605f1f891635e2992945ecf3b37612142b1d9be81efff35c49062124a8e201a0c040a0ae06f86b8a7e54de6666b5566dfac2ba4f56f4955eed78c38495e19b941ea2034f4a351f747e683d247d8c73eb4458b5bbad008a5b8b707e1e53134fcd1e478a0fd66599f0a4d3e5486249573021598788a30b44e3e610963cbd8fae3c1bf470d7cb0632a3f64268b6418779d9e37e73f9b69d20c334570037789cae7f6785a283443206a81c27e82210bd5b9f3c5d64ed4b18f47dbdeda2fed1ae75d8fd30a9950b3a907fac4bc8c13de958cc82c7fa67b71867ef5069d77a9d00b940e5a98aa20ebf1809da3d60270e647a11c236ceaad4e2b0023a7eac091c002169cd0a55bfae39fea135a1490d18d57af6df06c8070d096adc5c2d42a53bceaafb1d3207ee0c9fa100865e593e081073c4d09f5ff47cb89952ab9f3a63e66788be02162f26b31919ab6b3ba4157085afde3d2408c6e9f7a0e174ab9dcfd30ae2abbad2fa9cc83ae42f67f3f7bdd170a03913e614ea3cd7aa06b3ebb1d02bdaf3988b78d5b4c43011fc48b8613cdca33c5f8f995d7c6a6d1373fbad091a239c084a0e728eefa618182cf4fb15fb7b99ac16908fce6dcf1ef0ee3bffc93d6ecbe0b65236bf0556439b663c60ee803242d1bb1f029ba20f2f96d287b32ad51fd288da0d398e4c39c81bc3710b5ca930e8c14af71528f8cac1a4776c97d7c77ffb3e8b9e30f5774a0c262a45271d5ba46ca0c5ff10732f44dfb2efb56d2ed2df00c4764ba6eb95c5206676e7a59134d21d00183b02c811ceb81234e4962e803960cf63c7faad57f275b26ca4a3864f56e3cd0e5c554500555b96ee114", 0x1000}], 0x1, 0x4, 0x800, 0x2) (async) ioctl$BINDER_WRITE_READ(r0, 0xc0306201, &(0x7f0000000440)={0x9c, 0x0, &(0x7f00000002c0)=[@transaction={0x40406300, {0x2, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x58, 0x18, &(0x7f0000000080)=ANY=[@ANYBLOB="85616466000000000500000000000000010000000000000026000000000000008561646600000000020007000000000002000000000000003300000000000000852a6877081100000300"/88], &(0x7f0000000100)={0x0, 0x20, 0x40}}}, @reply_sg={0x40486312, {0x1, 0x0, 0x0, 0x0, 0x20, 0x0, 0x0, 0x50, 0x18, &(0x7f0000000480)={@fda={0x66646185, 0x8, 0x1, 0x31}, @flat=@binder={0x73622a85, 0x1101}, @fd={0x66642a85, 0x0, r0}}, &(0x7f0000000280)={0x0, 0x20, 0x38}}, 0x40}, @dead_binder_done], 0x93, 0x0, &(0x7f0000000380)="355f3a3ea2f8f4157c72b5bf7d95a527122f9e3bb84ac7b5a37a62215be4a515d4a7ccc8b909f5a3f49cd13e27de08344594ef2f436849300b44a138160f10e0314dc7fea24c4b77dc91b5141429e55698720deaf8fdb8085cb48947d48c4ea3638132f7fa89d541ef03d3d0bbfa96c75f9d37348abc75b97a1a6736a23eb36948f4171be655d8de14d7a98c0258521f069c4e"}) 00:02:50 executing program 5: r0 = syz_open_dev$tty1(0xc, 0x4, 0x1) ioctl$KDFONTOP_SET(r0, 0x4b72, &(0x7f0000000400)={0x0, 0x0, 0xf, 0x8, 0x0, &(0x7f0000000000)="fb256614fe30d947a3185353e7685a2d315e459d080f35da9e895870ca2a1c42df5f8fe8fc428cf6accb12becae44f0318f92f0e59a50691be2706ac1e995a2668d18d37e6189580ad124435cb34656b214e0afbea359a42618963ffb3ecbcebc1622acf5aecfbc3a7d92b57bed385682eee0a5cf67ff614bb067242a3e21c51467cd28c134283f30ebda61f2d5c96b6ffaddf146f1540fc72807633770b28e26081dc94888e2e9039497785fee17063c0bffbce918e5529de9826ee3e441c39b2561f8fa58bc798c9b628c2f3695f593758a30c6b9b888c7282110b30a45c61773b5464bae32d85f28696ec2997d9647b69933b378855f8713aa32c8c35e654c1b2c89afb5a52f5c1d828351efbba20f6f8debff7e4856b832ef53a084ca4d3b0b89bf9bb248844bf89365ed1b9c9ae706bcf3ed5184be528368b75a6fe811303b4015d4be5b9331d0f1326d464b9fb40e0e66f0836ce10a06060ed9ec0f9b0dfb2f04df523175068b32b44c120e476f65b7f2e3efede85d842504d6d185ee1d6befd3ee1ed8c0c582534fe22e14a7098f4631969ffe1d1792852450a5494304d294f0d134d04a1c81a81e05900054fbf7688031d3eea1d0799147e48f02696e7e1e1d49e3fe328f458adf5a524168547ef5c338da371ba63482ee06115c8ab40fbddfdf1bf7505ead7acd5ad0f802c721bc796d18f97a16751db461f6b42f679bc385a7bb92a12a2900527a59310d4750898abae15346fa3aa5064f69ab96d97536e2ca4c2d667ac643824f02e3a3172b2a7721275d05a874cf5504993d9818a38ba7ab3d65b06b58d19e8096c33a49dcae4a6660193053a960f338c6353b521a7f4e4a0e27d7229f4b44755f9ee2b0f2550f95c2bfdb6dac023f56ede63c3d685437b71caf58b50eb011b31bd1c77db06cc56e3e87f4a345ed153977d07b342252c4932fe7f8fe3bd5e1e7a6fbfb67e58253a42ad90652b2b1a34cd16ecc7b1ea45e3f0190192f733f0d251cd585484f13ed75495539e2e679b50d8c2765c01197c6f7511977f7709675c3df7cbc7581f0f4d1232bce886600a24e1d5f1e0ae4fb04f250020d0eadfd7da2890ce02b5748ac9e9d1e208abc87e446bc2ccc22b95983d3775adfe26cc6c44cd56f3f0c53a60d9c82d4f48e9be7069c84d8fb26cc716625540fac3e11d391ee823f855ea1d74f20309cecc4158baa61ef0c0f5566665e000b9f755dd62cc2d2e47844aaeff66ebc8264d01a01e2ebd94f9cc9ee3aa1e0b1de56fbd3f101ef5af388cd32fa6c31994bcaf1dc1db60a719b2d01f2bdc63183c9c1b9d5a4884a6b7517847932995347f010e1ff044aafcdf73209f696ea51b5e59fef8185670dc54b28ce222311884e1ce9fd9d448805eebafae2f13812f1fc5e0a2abc46365bd3123330e516433e56e57e211a8ca4f72b0d12819"}) r1 = socket$inet6_sctp(0xa, 0x5, 0x84) setsockopt$sock_int(0xffffffffffffffff, 0x1, 0xa, &(0x7f0000000040)=0x8001, 0x4) ioctl$sock_inet_tcp_SIOCINQ(0xffffffffffffffff, 0x541b, &(0x7f0000000000)) r2 = accept$inet6(0xffffffffffffffff, &(0x7f0000000100)={0xa, 0x0, 0x0, @remote}, &(0x7f0000000140)=0x1c) r3 = socket$inet_tcp(0x2, 0x1, 0x0) ioctl$sock_SIOCADDRT(r3, 0x890b, &(0x7f0000001840)={0x0, @l2tp={0x2, 0x0, @empty, 0x4}, @l2={0x1f, 0x6, @any, 0x992}, @nl=@unspec, 0x0, 0x0, 0x0, 0x0, 0x6102, &(0x7f0000000340)='veth0_macvtap\x00', 0x100000000000000, 0x1000400004, 0x1}) ioctl$BTRFS_IOC_GET_SUBVOL_INFO(r3, 0x81f8943c, &(0x7f00000003c0)={0x0, ""/256, 0x0, 0x0, 0x0}) ioctl$BTRFS_IOC_SET_RECEIVED_SUBVOL(0xffffffffffffffff, 0xc0c89425, &(0x7f0000000280)={"e6696328276c80ede1cbb140551427cb", r4, 0x0, {0x0, 0x7ff}, {0x0, 0x8007}, 0x28e, [0x0, 0x400, 0x0, 0x10008, 0x0, 0x0, 0x0, 0x0, 0x0, 0x80, 0x100, 0x78, 0x3, 0x0, 0xfffffffffffffff8]}) ioctl$BTRFS_IOC_BALANCE_PROGRESS(r2, 0x84009422, &(0x7f00000018c0)={0x0, 0x0, {0x0, @struct}, {0x0, @struct, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @struct}, {0x0, @usage, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @struct}}) ioctl$BTRFS_IOC_SNAP_CREATE_V2(0xffffffffffffffff, 0x50009417, &(0x7f0000000840)={{}, r4, 0x3, @unused=[0x0, 0x6, 0x70000000, 0xfff], @devid=r5}) ioctl$BTRFS_IOC_BALANCE_V2(0xffffffffffffffff, 0xc4009420, &(0x7f00000002c0)={0xae10d923b181b09, 0x1, {0x9, @struct={0x0, 0x101}, 0x0, 0x9, 0x90, 0x0, 0x5, 0xffff, 0x63, @struct={0xf0}, 0x7, 0x80000000, [0x2, 0xba, 0x5a26, 0x4, 0x1f, 0x7f]}, {0x40, @struct={0x2a89, 0xd3b5}, 0x0, 0xd7d8, 0xab, 0xfffffffffffffff7, 0x8, 0xdc54, 0x4, @usage=0x4, 0x120, 0x6, [0x3fcc, 0x178, 0x6, 0x8000000000000001, 0xfffffffffffffff8, 0x2]}, {0x29cb, @usage=0x8, r5, 0x3, 0x8000000000000001, 0x1, 0x2f, 0x81, 0x2, @usage, 0x7, 0x8, [0x7fff, 0x3259, 0x2, 0xf5b2, 0x3ff, 0x3]}, {0x2, 0x4, 0x3}}) ioctl$BTRFS_IOC_BALANCE_PROGRESS(0xffffffffffffffff, 0x84009422, &(0x7f0000000080)={0x0, 0x0, {0x0, @struct}, {}, {0x0, @usage, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @struct}}) ioctl$BTRFS_IOC_BALANCE_V2(0xffffffffffffffff, 0xc4009420, &(0x7f0000000480)={0x9, 0x0, {0x9, @usage=0x401, 0x0, 0x100, 0x6, 0xfd, 0x1a, 0x2400, 0x445, @usage=0xaf, 0x9, 0x6, [0x4, 0x3ff, 0x5, 0x2, 0x4, 0x24]}, {0x1, @struct={0x7, 0x101}, r5, 0x5f31, 0xfff, 0x2, 0x5, 0x8, 0x0, @struct={0xe35e, 0xfffffc01}, 0x4, 0x0, [0xffffffffffff34f4, 0x5, 0x4, 0x100, 0x3, 0x2]}, {0xab8, @struct={0x9ee2, 0x3}, r6, 0x5, 0x4, 0x100, 0x8000000000000000, 0x8, 0xe5, @struct={0xffffffc0}, 0x7, 0x2, [0x7, 0x0, 0x100000000, 0x10001, 0x8, 0x80000000]}, {0x800, 0x400, 0x6}}) ioctl$BTRFS_IOC_SCRUB(r1, 0xc400941b, &(0x7f0000000540)={0x0, 0x4, 0x20000000000, 0x1}) ioctl$BTRFS_IOC_BALANCE_V2(0xffffffffffffffff, 0xc4009420, &(0x7f0000000940)={0xa, 0x0, {0x0, @usage=0x6, r6, 0x0, 0x100000001, 0x81, 0xffffffffffffffff, 0x95b2, 0x472, @struct={0xffff, 0x803}, 0x3f, 0x1, [0x8, 0x0, 0x100000000, 0x2, 0x10001, 0xfffffffffffffff8]}, {0x80, @usage=0x20, 0x0, 0xff, 0x9, 0x401, 0x8000000000000000, 0xa8, 0x3, @usage, 0xb62, 0x3, [0xfba, 0x3, 0x5, 0x2000000, 0x9, 0x5]}, {0x8, @usage=0x2, r7, 0x5e, 0x1000, 0x602f, 0x285a, 0x8, 0x2, @usage, 0x8, 0x8001, [0x7, 0x7fffffffffffffff, 0x2, 0x5, 0x0, 0x10000]}, {0x8, 0x6, 0x5}}) connect$inet6(r1, &(0x7f0000000480)={0xa, 0x0, 0x0, @ipv4={'\x00', '\xff\xff', @multicast2}}, 0x1c) getsockopt$inet_sctp6_SCTP_SOCKOPT_CONNECTX3(r1, 0x84, 0x6f, &(0x7f0000000200)={0x0, 0x1c, &(0x7f0000000500)=[@in6={0xa, 0x0, 0x0, @private0={0xfc, 0x0, '\x00', 0x60}, 0x1}]}, &(0x7f00000004c0)=0x10) setsockopt$sock_timeval(r1, 0x1, 0x7, &(0x7f0000000440)={0x0, 0xea60}, 0x10) 00:02:50 executing program 1: r0 = socket$nl_generic(0x10, 0x3, 0x10) syz_genetlink_get_family_id$nl80211(&(0x7f0000000240), 0xffffffffffffffff) r1 = socket$inet_tcp(0x2, 0x1, 0x0) setsockopt$ARPT_SO_SET_REPLACE(r1, 0x0, 0x60, &(0x7f0000000440)={'filter\x00', 0x11, 0x4, 0x3f0, 0x0, 0x0, 0x200, 0x308, 0x308, 0x308, 0x7fffffe, 0x0, {[{{@arp={@remote, @broadcast, 0x0, 0x0, 0x0, 0x0, {@mac=@link_local={0x2}}, {@mac}, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 'bridge0\x00', 'erspan0\x00'}, 0xc0, 0x100}, @unspec=@RATEEST={0x40, 'RATEEST\x00', 0x0, {'syz1\x00'}}}, {{@uncond, 0xc0, 0x100}, @unspec=@RATEEST={0x40, 'RATEEST\x00', 0x0, {'syz0\x00'}}}, {{@arp={@multicast1, @initdev={0xac, 0x1e, 0x0, 0x0}, 0x0, 0x0, 0x0, 0x0, {@mac=@link_local}, {@mac=@multicast}, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 'veth0_vlan\x00', 'ipvlan1\x00'}, 0xc0, 0x108}, @unspec=@IDLETIMER={0x48, 'IDLETIMER\x00', 0x0, {0x0, 'syz0\x00'}}}], {{'\x00', 0xc0, 0xe8}, {0x28, '\x00', 0x2}}}}, 0x440) sendmsg$NL80211_CMD_CRIT_PROTOCOL_START(r0, &(0x7f00000000c0)={0x0, 0x0, &(0x7f0000000080)={&(0x7f0000000040)=ANY=[@ANYBLOB='(\x00\x00\x00', @ANYRES32=r1, @ANYRESOCT=0x0], 0x28}}, 0x10) socket$nl_generic(0x10, 0x3, 0x10) (async) syz_genetlink_get_family_id$nl80211(&(0x7f0000000240), 0xffffffffffffffff) (async) socket$inet_tcp(0x2, 0x1, 0x0) (async) setsockopt$ARPT_SO_SET_REPLACE(r1, 0x0, 0x60, &(0x7f0000000440)={'filter\x00', 0x11, 0x4, 0x3f0, 0x0, 0x0, 0x200, 0x308, 0x308, 0x308, 0x7fffffe, 0x0, {[{{@arp={@remote, @broadcast, 0x0, 0x0, 0x0, 0x0, {@mac=@link_local={0x2}}, {@mac}, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 'bridge0\x00', 'erspan0\x00'}, 0xc0, 0x100}, @unspec=@RATEEST={0x40, 'RATEEST\x00', 0x0, {'syz1\x00'}}}, {{@uncond, 0xc0, 0x100}, @unspec=@RATEEST={0x40, 'RATEEST\x00', 0x0, {'syz0\x00'}}}, {{@arp={@multicast1, @initdev={0xac, 0x1e, 0x0, 0x0}, 0x0, 0x0, 0x0, 0x0, {@mac=@link_local}, {@mac=@multicast}, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 'veth0_vlan\x00', 'ipvlan1\x00'}, 0xc0, 0x108}, @unspec=@IDLETIMER={0x48, 'IDLETIMER\x00', 0x0, {0x0, 'syz0\x00'}}}], {{'\x00', 0xc0, 0xe8}, {0x28, '\x00', 0x2}}}}, 0x440) (async) sendmsg$NL80211_CMD_CRIT_PROTOCOL_START(r0, &(0x7f00000000c0)={0x0, 0x0, &(0x7f0000000080)={&(0x7f0000000040)=ANY=[@ANYBLOB='(\x00\x00\x00', @ANYRES32=r1, @ANYRESOCT=0x0], 0x28}}, 0x10) (async) 00:02:50 executing program 4: r0 = socket$kcm(0x10, 0x2, 0x10) r1 = socket$inet_tcp(0x2, 0x1, 0x0) setsockopt$ARPT_SO_SET_REPLACE(r1, 0x0, 0x60, &(0x7f0000000440)={'filter\x00', 0x11, 0x4, 0x3f0, 0x0, 0x0, 0x200, 0x308, 0x308, 0x308, 0x7fffffe, 0x0, {[{{@arp={@remote, @broadcast, 0x0, 0x0, 0x0, 0x0, {@mac=@link_local={0x2}}, {@mac}, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 'bridge0\x00', 'erspan0\x00'}, 0xc0, 0x100}, @unspec=@RATEEST={0x40, 'RATEEST\x00', 0x0, {'syz1\x00'}}}, {{@uncond, 0xc0, 0x100}, @unspec=@RATEEST={0x40, 'RATEEST\x00', 0x0, {'syz0\x00'}}}, {{@arp={@multicast1, @initdev={0xac, 0x1e, 0x0, 0x0}, 0x0, 0x0, 0x0, 0x0, {@mac=@link_local}, {@mac=@multicast}, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 'veth0_vlan\x00', 'ipvlan1\x00'}, 0xc0, 0x108}, @unspec=@IDLETIMER={0x48, 'IDLETIMER\x00', 0x0, {0x0, 'syz0\x00'}}}], {{'\x00', 0xc0, 0xe8}, {0x28, '\x00', 0x2}}}}, 0x440) setsockopt(r1, 0x4, 0x80000000, &(0x7f0000001840)="eb", 0x1) r2 = openat$dlm_control(0xffffffffffffff9c, &(0x7f0000000000), 0x2082, 0x0) sendmsg$kcm(r2, &(0x7f0000001800)={&(0x7f00000000c0)=@caif=@dgm={0x25, 0x1, 0x16}, 0x80, &(0x7f0000001780)=[{&(0x7f00000001c0)="8ce378653a8fb568ba2ecfcf41c45aa607f76937ca12d27ba4cbf67657d4b1d3cb67e224a656ff41fe8bbb122457880008b64a4acab666a6205dbe292cf4df98ce9da170a1ace0dfacb55e28ef6abc3f30e3510cb33c5677077213551f8e38da46f55b57cd6ef54383cdc0ad0294f20ac5967e060e02ca2af4956209f9b60259d68e526137595a3cb15bff4bdfd7639edaa723b05fec87541004c211", 0x9c}, {&(0x7f0000000140)="cafabe3b8dbdd32fab354c4f59720bf6dd4103f82c2f86a4d9f8f49a3dcf3fa93ed98bd122768f7d954e9cec1078c7a030073ffe545ae3e742193fe08b", 0x3d}, {&(0x7f0000000280)="7e84403461b1f02bd6891cb23b6525c9d9e9c385326c132f512f43a3698ec2c4edcdc494717b1dd62013d649f5f3fb85b5efd83bce8c9f763e7eba29fc66c1c379c7fc1f9e27fbf49e011ed6cac8b82a2be411c86284afa141d01d198d476cd905ae94d26f8167aac3f349a2d552064700577cd96958d89020cb50f1e0de6d73a65d34b40504d543ab0ceb91f24c0e4a924c10b01f8201a332d3b7dd53529bd1c4e28f4482eda8db08778d553fc72884fa9fc4714987e197b91b752300917da6340e29161574c5ba777b81be14572ba08e18cfe8262a6bdb6c355b06e8a08d5017554378c54c8bc6f920419672b9cb01fdf18bcb1b03e642facffbf951297418b6270f9d4c911010ad506c3d4c1d93624d974b6ad951166828f950578d16c647433411ed61ddeb5a0a0f1764c77313c3779946cbd5f5dc21706df6277c78f5aef398e479151fe608c2fecf0479885e60042a25c0c2d050edb1f9f693d6b43581db4705c7e912fb2ea1e774e3cf21a0c3f83c407d74cc9a113188f1aa55e7e5a2d3e3d0e213f80e404b4f9a1f32a438137a9dc66b7f17d751e7760361e9c7fde216fa2f3556758242a2be8fca01abda9cd97a2cda0e38544efb6636b68234a7c05398413413f667c1446f7a9d136a4ebcd6185f35ca52ca3dc1e98ed6dda39005e7847326b6951faf5e3af609087d929815add34986c817b6bb8f824a8f29bc24d78b44ec03745d22f456cf47d9298c12f35d4ac0fd39186521b1137e1cdb5a5e5d0cd2d827ac81c19e7548aac9980da488462c3e1ce881c453fea95434071d519c026a6842657271700d5a07a0431825b6339738d4f907292201df5a7007fedde4445f8771b2fb2677cdab32f9fc7d0e6b9ecd3834fd414d5ee48add7192e68d91bdd0b1f992a2bb2508d1e69d506c9a92ac1f9e6eb26f4cbf05789786f468b2da76bd64937a0c7652064cce29a2f229c728c392ba0517c313c0d71d116d85df4a6d4d9b5c75e3174245090b09887ba718d071aa8ceb87888c94605a7c80ddf4190acc643a9f96754aac7b8123ecee2352f83492a9b738528316174a5ca34f577aa5f155372fa3202e49e5c111b8adb7c49bfd8e74e50c173d6979cfd856cfc1211d746034c3f390e1a27027d6477be9772cf4f8029387eef7f97b314a56e824f9ccbff28ba8af7be494941c0e00081a4328ce866b28a86d416c06ac30145cce4cc6d1e4cae509b4798e3f2c78046a4c7430ae38d9881b241fc7243849bf43c0427c8c2f151f584c5c7549525184565d27d789a6a6d6b312291c304d5e93ff6033762634be55bb314b8e09f220e5546cdd00377f35e368bd6f489a23825f23cd71ccf0ada4b534b8aa87a3a73fb2307d1c8aebc167f687149f34ef5ef2ee2b4e8ae8b284a39a2bd2d827b393ffb5945892e0764c7b12f07eec4e0d644821ce041d812d8b082bf9db1113e018f5363f29d1a67f008e8b7e9f8664ff68f5b978004f05d01084dca75086b7078c392713a6d980523fb3ff00b57970794dcb674c636eea52aa8d2242e628ee0383afddeefed2cc1645baa25e6b0a67df2445ca24e0a58715d2fbc94a9cc310b3e0d5bd26502c9786ce1de34a2a668d0d5b07d363c7584708d6e55a4ab9996872eed15663cc076ebba81897e4ab4b06ca7d596ed5f260913fcb0c194724208423d09177b9b593caaefa2dc57edd332ae97afa1ec339b13c88a931310adf8b1a7a9420ff6d8e6c3e0524aae603929d356514392540c13bed3be4540ab2ac1d711a8dae5f89bdfaa987203712e7ebd851be3a8768676ecf4f450ac688884285391c37063a4b952de013e7911fef0c9be830f2867a168a971f42db7672a2c0e58f6f09f1706091d0c1af5cfb0c6433e5e712830c171c2db1a6e58dde49754a61f4f19d39b98a9e5ba27dfc62c675c5fc40385f27ff3469a3c4224d755dc28cb4f028f1dcf381e87ca21689b707e087053de08c36a57e486da1f8ba9111732bcdd6b5e4a283bcdaf44d400b6a6d4942b2159abc44ba7b5d99c6604750c812c940df22d87e6288191b2e18abf4b4878990263054e4ee45067b64ae79df377af86c7257617f646b386a607561314d5529a7b053c35463c0af0bf86e1a4402335f08e688b7998f836799c494e2ba081cdcc94dbf7921adc0bc3420de4575f2443279e243de1fdcd5456f06ce7bed2f45f88b1f5c9e962a08bc621d8eb89dc6d79a943e8f70a5b7f8331482e1aad2fd8742f5d5ed62f71cbfea79834553f727de3d5a997a1239a070ae0e27f2619fcfc761996f593abf08bea720892e85275ba286d9dd582e956728051022c4b1d8f3fd49f0b4581eaa55f4d1ee4cb39b665e58673f0dc91ab34a4b57c8c0e0abba92c6ec9b4623804befe72ac547f8ce2eac537130b6994a9933b84d2aaf0c1beaae331d301f0468a2a2422ea1300013753e504a9a430706110b3f729e0233cc5c2a61e0857acd5f34e32cc37f73375bbb7c06ef92199e241ab730c81ec7a086b228ae7e65d264e1256e82e3f9d890a0fc022c3c60ed1d50f1da635387e31b0c0bf4d0775d635c3efde2168781f8b000acf70ed11306b47c9e03b874fb6741389ea05874cff953c995e5793320506735b485aaa4b30f629cc280daba9401a37c65de12b68e19d3017ba00f3ffe5332b9e928124c9ab5a760750a9eeb883371bfa516683d6e09d0dfa9acf1bf2552fe3a237bb3e2d960bd498f0ae6c4929ea9afa7ca923e4e5290d631cf78fdfead4dbef42fdd28e18de45d39d58e42cd43435a95a37250b26915c049cd9c5b114cfd8179ad3be80e5910e15b248bbed1b7bab81b56c656887acf3dac8f53ad1396bcc5ddcf562eb73a5e70e2f1bd2111c07ea1c804beb9052cd6e2df9515ca8e7f0ef14ec5f2ee5d88aae243ae889d1211848454838cbc639141013f36e0dfb8365cfb4385ec3ceab4c5dca2681a80e7f759e14d0221b68166ca08e05fb3c46c6982853bd100615b57b0ec58194d12f8b432223dd16173f17289844a823d0edb7346196faa108c98d1f8f3de51e57f46cccf1fe92e209d6cf7543d8a7dc7000816eb0e857cb0fd7cfe7a7596a1df054106fcd038abbea8b8c6c2b4664ff56047d8f1a1d68508ecd7c864ca77a27d8625f10fed8dbc9176973bc7a365f87dafccfbc96ab637294b2e0a98ab2871d3ac7ed6fed57476f62b9c6678ba364ff67a0b8453201674bd066452948288f8e71c6df3427758a4bcf275dbbaa960c91c8368098fad4d1b76ee6f9e766f1697e23f7a9b9af8a082e2230d62f04d8586dd29ce1325f9c3a5cd26ff6a97530d7ea87ee1ec02b826a56671b6b813fabfcf2c9af31e52155d54f2b3cf1f8be5c01127d28b0def34aee9506534bf39d65bdbfc46eb88542e25690ec2600fc37a5eaed6c4f1f77f520d3f226ef0f510f6d5f4d86777f6cd7b17f70034a42073f34143f2c2674a4f8aafdef180f6cfc7105a0fd5ff56a93bb155e24f71b81b63853540098961eb55577fe93c9606abcae06a87e17bda57abf8169f092c2c3e9c3cad03e305e33dbb6e811f759855feea41571a30f8ff7c1122512859cf8b5aaf08c51d148918b433faeba9b20b58f529c65100f5e5cabbb237a635cc9e7f5938f47fef0ce9c6ab642450c06c2858845fc03cb2f3f48c771c13a6db6af17d1e434c721045aee089cb404f89fc56a1cfa843e2602cbc159eb2e0877cd41eac1528f6eb7df03e5b72bf1a1a1b0df7e0a5026a7ad5dbb6519afe3ef9a1d7aeeedfa17d85e3790f586f0da9b1b1267253a11103b13f8d8ffa4ef2c3d8fa7c0c22b5d1b25ef074bf5fd1d81b7d38ad819a6f285452f5085e2ce9d08a5caf404cd8a7bc2029a721cdb488cb7982b75540e4429fae08734fe5fca805c4019076d568fe9ea83150072848a9779427373d7523817c27ba7404eb1cce4c41eb321cf197cf7380e2372072fefb4d49cd0fd111964e0f1657ba7e5c610a550a80f3968ad4bdbfa168cf861ad7d9a940f338ac64d947fd9eecfc9ed8e58f161a5c7a0c9a33f02f8731105f71cb8a4d918a9c070757f5d97a9c698b503334a9e2b50d9060a83652313bca7d9aaf57150a85446e49fa67bf89c007005947ea1f0d36900a7c95571518025d145551ec939fc0dcc4e510de2d2704620c47227d69d04f7fd826dcebf51e825abe6e7bfd0618683f6c32c436af91828b8a68deb2e6366f6fec7da12654e8657ac7946c1c1e7e74ac15740c127d17fb26ee0d5509b7f0e2907ab550a8bdfd5cde3841dc7cfa130424fe66ca78f4739d09b87f1f16248e8c276be2959774be6bac376b366b59fb20dcb312c15edfce8fb837761c3aaca32b1c818a2cfad444576144e048b761d5f4bd8a9c359f9d2a284a4b607182d1c0e0fc64d8a37684aaa2d0028116a1fe9839d11261991d3287a162095eeeddac9eb9e46c936107fd9e98b0f2a304672e958b6719e856d1fca43130b04756618ebc3f52e2eea3325b3e78cdf1c704ac0f6fcea3b96300f51752cbf552a1cd6e00397b2bcd4104542b9f384911edd1edbeb95a4bd579f5852ed77fae16d30d2ddd8e943d5d1848ed2c9b0e73c9e5da9dcd00527c67cc23a391cfbd4130182e6b5a17204b5a0353ae8f02fb7435467d62b268a10902cd5761ab6f3de96d328fcf3fd30d8030211c9c2b536412c91850f731a2c73aa80651beebc7b3730b635506f5b6ab60298bb97e7f0876b185ebfee7b32f5b815d66cccba8dcb8a74641884d7c63666b92f29bd348cf7a3072940ae817f8f71d7187591f9d3e1fa6bc1e5062e3e9ca55c3a9310c9d15bec1d508593c2679ae8af503e2701d5558160d54ad5a72af8921f2eea615726573b84b8721ffa182f4ecb6bb35a0d1483b17a6d7561bc66be9da3eed54307d49622a671d2b1aff8ad582322537ddcec708c39944227ad073c7eaac7eaf47b76aa2fc48c62b223763d2038657800776eda20ecc11cff9ab03915df8fc2338bc932cd2978105c10a1bf4e5316be280d5936508bc57c3e63301e87a2fdfb94c7f2dc9fb58e93096e7a8127ab3f557cb2daedfee7aa7ca372ea011b4b7492ca6a651417a07778073856963c1d5359d37967b2f64bedbf4b5d796bfd536ad0e8ac904baf0e823bd8360808764d25c6a9047e5d833b092aa2e77a3206200071ecedd08eb5711f289aa5e03c57d68850811db2dcdf637f14206e052962f1522fdb6b574b69df6550b0e2f666c13be278d443f9bafbf19bc0af2c0827e58c55932ba4b73183d98bc7855b3003dfc3cd70a86b81eac6b8955fad8b9b86f4215942c357b6678fb669eab51105bdbe0d20350acebe99b52449e28b9df77b5b4f12a8adc46eeba94d5d1bddf6979a74bc0f9f23b8a88887e7364ef05fa8546c22635bf0e200ddd76f68d4481a08d4dbdf32465e724fedbe0cf65160e247ce56f93fbe284663b21a8d454449738801d7880dbedbe756492719335e2da8ba5b5bec529e32d3991f064ab3c3ea71e799fc2a38e0ebaf907ee282378f2fd566d01b786eef896e3abf7a14b0189dcd03eddc86952c50a95917bf6bb67f87f610964ef092103871a51df52e136d9f6353bd3f396e2eea6936d1bfdde7fa2877295d2ff0559fbd513bacc225423a521ebb79ff0e01f79cff86a1ad45be91e5b3e7d5500a56de4a89b76e08273e392215267436445f8054a8ad47d864f14f81e00997dcdce7918c2115fa1e6d9659eca3cd4646c7027cb5c248106606b2cec844a5354e538142a6f84edb3ef9c9f7fef90d00879e75e128ed629d076bb18", 0x1000}, {&(0x7f0000001280)="6777fa3ca36c1c52c6fb24a6fa884e71f6806cc713025871094aedbaa44ef09bcadd1675a413a951a2372af398f7edf67f8ae729a8aab8c19e9aadbb6e2271a906f4cea25cda8ee8c3024711530ed9a568e7b4adddba2544c29a72491538b87de2f2951295f86c5bd70c836e3bdb7de9c4cb3924a7589a0349b69e2dd6ecb18cf5110aa1a56cb8aa4e5d04209b020208f9faa45b70e942bbecee7cb4fe521cc40b1aa0f8ffed57d7e4c12cc7e4937d5f04fbbd86ad7fbfd6686c1874b6e97273e997588743aebabf417173db5b2227856dad3bf45cbd585ec11fbba3e4585e4cba2d29c5a2e116d03dbe9e1de3819f84874f90bc", 0xf4}, {&(0x7f0000001380)="8e31593c45977838a7ff121e0d13938ef54e25361467691970d0484afd8c505805ed1840c3ceb468c626ab729752ef48472c9d20bf7883b76942159e1067e09e32da21ab8fe39df2733c42b11ce9b6cbc59e15913a00f0c3fef6c4e7f30744ff8dc4a3d1ad286133568bd87bb08f622161656b6ec78dad71389a5b7370ff546ed1ee499fb9501666229e82906307d4922cf3ad61da6b7d0a2b2cb8b598b05f66bf9976807d1398597009b180935407cdeeb38e397d3edb225ba2d483f2be0983e853da7c93bf64f486c3f305df8a359911b5ba4e4f4dac1fae47dd2d3b75e94128da", 0xe2}, {&(0x7f0000001480)="7ee295bc576cb294f032d1122ae373df48054316ecab0d483f71da81ea121a883b3fc01dda88f4fea0eb36596fb3cd1fd7b8cba0eb635816135e1e6272d4754a0d856ab2ee9d16c3164f62b8a7d3f2a56199f03c2a921b9962ae14ca4d8d094cabfcce0abd274db33ad6648be5cabd4b0ed32dc27bb6290f2f778df49514d0a94315e52b76f1008b5f2496c588e84acb3577d329d6f7a08eb3e7d42aab532613157d483b16b1d11884a9a61009193d38b03e0ce6ac86ac390dc09631c6a068d0fddc26111ffa5a11723e4729c2e088d48bed3ec158be5e5e4d7a4b8f8925d74fb5f658054e37e619eb2b655af4d749b86e3c4d", 0xf3}, {&(0x7f0000001580)="17ac382439e2c754e8243bfe3915bf517ed2a72e948f86df60ebf581eb8eb7fcc8237e33edbd00a698723165ca4f308ca30d359649be4316d9ff1cb89ec418980fa27d60c29fc6872783094a2cb43844eb9bc4ce1d60d4e6b0d06d340ad85f299273816ead23d76277d6fec0e5ab695358be7b797e5289ecaaecce4a80555a4ee4904e1d6596e5211055c4477a2cd599c43ca3be6cdc19cc2937135c86b573c1ef8ddbb82a83dec8ac19809e3efad5498ef27efc2f00c8cb129e96cde78a50b4c138f822db8031b4a820d6a3b149285da395efd885344657db69c0c0db1dd507ed625672cb0ccc938db136bf43c99ad36fedc16fdbb1fbf8ed65fc272f", 0xfd}, {&(0x7f0000001680)="a7e56d59fc54a3949099ced55feb3ce3601f81cb512c8f292e53a1462965cd74e92e320eed2d06065c73844ef1f440378f1c2a4b21a14c3a23d64d54c16c23b37f6217b97f9d99c0a99863113f61b71d789ad81671775a15d7753029f87391657f618406f6f8a023d92eb302f1614412be82a55281d8074a42bfdb41d6d156779c983056fb6864a374e62c8e675bde4f4c847c8476d44ab241e70d8fe766902eafd79bc120deb18f1736bc7e0f74538a8505dc3e70d157d06e0db270db698df0e3f1", 0xc2}], 0x8}, 0x1) sendmsg$kcm(r0, &(0x7f0000000180)={0x0, 0x8782559fc2aff2e2, &(0x7f0000000080)=[{&(0x7f0000000040)="e03f03002800050ad25a802e8c63940d0424fc600c0018400bac0f000aac0f0037153e370a00038004000008d1bd", 0x33fe0}], 0x1}, 0x0) 00:02:50 executing program 1: r0 = socket$nl_generic(0x10, 0x3, 0x10) (async) syz_genetlink_get_family_id$nl80211(&(0x7f0000000240), 0xffffffffffffffff) r1 = socket$inet_tcp(0x2, 0x1, 0x0) setsockopt$ARPT_SO_SET_REPLACE(r1, 0x0, 0x60, &(0x7f0000000440)={'filter\x00', 0x11, 0x4, 0x3f0, 0x0, 0x0, 0x200, 0x308, 0x308, 0x308, 0x7fffffe, 0x0, {[{{@arp={@remote, @broadcast, 0x0, 0x0, 0x0, 0x0, {@mac=@link_local={0x2}}, {@mac}, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 'bridge0\x00', 'erspan0\x00'}, 0xc0, 0x100}, @unspec=@RATEEST={0x40, 'RATEEST\x00', 0x0, {'syz1\x00'}}}, {{@uncond, 0xc0, 0x100}, @unspec=@RATEEST={0x40, 'RATEEST\x00', 0x0, {'syz0\x00'}}}, {{@arp={@multicast1, @initdev={0xac, 0x1e, 0x0, 0x0}, 0x0, 0x0, 0x0, 0x0, {@mac=@link_local}, {@mac=@multicast}, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 'veth0_vlan\x00', 'ipvlan1\x00'}, 0xc0, 0x108}, @unspec=@IDLETIMER={0x48, 'IDLETIMER\x00', 0x0, {0x0, 'syz0\x00'}}}], {{'\x00', 0xc0, 0xe8}, {0x28, '\x00', 0x2}}}}, 0x440) (async) sendmsg$NL80211_CMD_CRIT_PROTOCOL_START(r0, &(0x7f00000000c0)={0x0, 0x0, &(0x7f0000000080)={&(0x7f0000000040)=ANY=[@ANYBLOB='(\x00\x00\x00', @ANYRES32=r1, @ANYRESOCT=0x0], 0x28}}, 0x10) [ 170.102468][ T4224] netlink: 147240 bytes leftover after parsing attributes in process `syz-executor.4'. 00:02:50 executing program 2: bpf$BPF_PROG_RAW_TRACEPOINT_LOAD(0x5, &(0x7f0000000040)={0x1f, 0x4, &(0x7f0000000000)=@framed={{}, [@ldst={0x3, 0x0, 0x3, 0xa, 0x0, 0xfffffffffffffff8}]}, &(0x7f00000000c0)='syzkaller\x00', 0x5, 0xf3, &(0x7f0000000680)=""/243, 0x0, 0x13, '\x00', 0x0, 0x0, 0xffffffffffffffff, 0x8, 0x0, 0x0, 0x10, 0x0}, 0x80) r0 = openat(0xffffffffffffff9c, &(0x7f0000000180)='./cgroup.cpu/cpuset.cpus\x00', 0x0, 0x0) r1 = openat(0xffffffffffffff9c, &(0x7f0000000180)='./cgroup.cpu/cpuset.cpus\x00', 0x0, 0x0) socket(0x9, 0x3, 0xffff) open_by_handle_at(r1, &(0x7f0000000140)=@ceph_nfs_confh={0x10, 0x2, {0x3}}, 0x0) bpf$PROG_LOAD_XDP(0x5, &(0x7f00000003c0)={0x6, 0x5, &(0x7f0000000280)=@framed={{0x18, 0x0, 0x0, 0x0, 0x2}, [@initr0={0x18, 0x0, 0x0, 0x0, 0x8, 0x0, 0x0, 0x0, 0x6}]}, &(0x7f00000002c0)='GPL\x00', 0x800, 0x0, 0x0, 0x41000, 0x12, '\x00', 0x0, 0x25, r1, 0x8, &(0x7f0000000300)={0x8, 0x5}, 0x8, 0x10, &(0x7f0000000340)={0x2, 0x1, 0x9, 0x200}, 0x10, 0x0, 0x0, 0x0, &(0x7f0000000380)=[0x1]}, 0x80) open_by_handle_at(r0, &(0x7f0000000140)=ANY=[@ANYBLOB="1008000002020000030000ddffffff000000000000000000"], 0x0) bpf$MAP_GET_NEXT_KEY(0x4, &(0x7f0000000240)={r0, &(0x7f0000000100)="204e04d517db538d4a1e5832c464ee941e82c25a5b4b1babf529e5dffa68b0335603eda2c1085e2a000e5653b4c6cb6520e204d075bd022c35b6cf8736785f823a9f42b0b9473b5c12f919bd4a5e657d898a11a4d8914952d95d7efe0e7584305d22b7dddb6a80146cf1f33f5bd30220ec35d6f517bb6bf272498458a703e0e18a4990774a9ff47b4cdb9d2abb187e0ba8feabf8a3fd47d444dd0104edaf153e9850e5974d0cf09d729539bf75d737b5dcffc2f043a5db65bb8a072b02b773f17c981007a502c8d87e62f601a7942f1f54f77e7e58a1ffac79fbfba4b767b45ca3c88158fbfe4e1cefd4d95a92d325738089acef920dd049", &(0x7f0000000200)=""/3}, 0x20) bpf$BPF_PROG_RAW_TRACEPOINT_LOAD(0x5, &(0x7f0000000040)={0x1f, 0x4, &(0x7f0000000000)=@framed={{}, [@ldst={0x3, 0x0, 0x3, 0xa, 0x0, 0xfffffffffffffff8}]}, &(0x7f00000000c0)='syzkaller\x00', 0x5, 0xf3, &(0x7f0000000680)=""/243, 0x0, 0x13, '\x00', 0x0, 0x0, 0xffffffffffffffff, 0x8, 0x0, 0x0, 0x10, 0x0}, 0x80) (async) openat(0xffffffffffffff9c, &(0x7f0000000180)='./cgroup.cpu/cpuset.cpus\x00', 0x0, 0x0) (async) openat(0xffffffffffffff9c, &(0x7f0000000180)='./cgroup.cpu/cpuset.cpus\x00', 0x0, 0x0) (async) socket(0x9, 0x3, 0xffff) (async) open_by_handle_at(r1, &(0x7f0000000140)=@ceph_nfs_confh={0x10, 0x2, {0x3}}, 0x0) (async) bpf$PROG_LOAD_XDP(0x5, &(0x7f00000003c0)={0x6, 0x5, &(0x7f0000000280)=@framed={{0x18, 0x0, 0x0, 0x0, 0x2}, [@initr0={0x18, 0x0, 0x0, 0x0, 0x8, 0x0, 0x0, 0x0, 0x6}]}, &(0x7f00000002c0)='GPL\x00', 0x800, 0x0, 0x0, 0x41000, 0x12, '\x00', 0x0, 0x25, r1, 0x8, &(0x7f0000000300)={0x8, 0x5}, 0x8, 0x10, &(0x7f0000000340)={0x2, 0x1, 0x9, 0x200}, 0x10, 0x0, 0x0, 0x0, &(0x7f0000000380)=[0x1]}, 0x80) (async) open_by_handle_at(r0, &(0x7f0000000140)=ANY=[@ANYBLOB="1008000002020000030000ddffffff000000000000000000"], 0x0) (async) bpf$MAP_GET_NEXT_KEY(0x4, &(0x7f0000000240)={r0, &(0x7f0000000100)="204e04d517db538d4a1e5832c464ee941e82c25a5b4b1babf529e5dffa68b0335603eda2c1085e2a000e5653b4c6cb6520e204d075bd022c35b6cf8736785f823a9f42b0b9473b5c12f919bd4a5e657d898a11a4d8914952d95d7efe0e7584305d22b7dddb6a80146cf1f33f5bd30220ec35d6f517bb6bf272498458a703e0e18a4990774a9ff47b4cdb9d2abb187e0ba8feabf8a3fd47d444dd0104edaf153e9850e5974d0cf09d729539bf75d737b5dcffc2f043a5db65bb8a072b02b773f17c981007a502c8d87e62f601a7942f1f54f77e7e58a1ffac79fbfba4b767b45ca3c88158fbfe4e1cefd4d95a92d325738089acef920dd049", &(0x7f0000000200)=""/3}, 0x20) (async) 00:02:50 executing program 3: r0 = openat(0xffffffffffffff9c, &(0x7f0000000180)='./cgroup.cpu/cpuset.cpus\x00', 0x0, 0x0) open_by_handle_at(r0, &(0x7f0000000140)=@ceph_nfs_confh={0x10, 0x2, {0x3}}, 0x0) sendmsg$RDMA_NLDEV_CMD_NEWLINK(r0, &(0x7f0000000240)={&(0x7f00000000c0)={0x10, 0x0, 0x0, 0x800000}, 0xc, &(0x7f0000000200)={&(0x7f00000001c0)={0x38, 0x1403, 0x300, 0x70bd2e, 0x25dfdbff, "", [{{0x9, 0x2, 'syz1\x00'}, {0x8, 0x41, 'siw\x00'}, {0x14, 0x33, 'vxcan1\x00'}}]}, 0x38}, 0x1, 0x0, 0x0, 0x50005}, 0x20000895) r1 = socket$inet6_mptcp(0xa, 0x1, 0x106) r2 = openat(0xffffffffffffff9c, &(0x7f0000000180)='./cgroup.cpu/cpuset.cpus\x00', 0x0, 0x0) open_by_handle_at(r2, &(0x7f0000000140)=@ceph_nfs_confh={0x10, 0x2, {0x3}}, 0x0) setsockopt$inet6_tcp_int(r2, 0x6, 0x8, &(0x7f0000000080)=0x2, 0xfffffffffffffedc) listen(r1, 0x0) r3 = socket$kcm(0x10, 0x2, 0x4) sendmsg$kcm(r3, &(0x7f0000000040)={0x0, 0x0, &(0x7f0000000100)=[{&(0x7f0000000140)="35d5ed9e56f08b6fbdec966c9966392164012118a79e06e4b12c2c2018144e28d55cfe74f8a006271fb7579e07c1e5cc42d3dd6a3a366fddd20830c1f2c52b5f6d0c725a8721b215a5e1d086e4", 0x4d}, {&(0x7f0000000000)="7067dd0000c859ab2f0d84ec060789a989", 0x11}], 0x2}, 0x4000004) 00:02:50 executing program 3: r0 = openat(0xffffffffffffff9c, &(0x7f0000000180)='./cgroup.cpu/cpuset.cpus\x00', 0x0, 0x0) open_by_handle_at(r0, &(0x7f0000000140)=@ceph_nfs_confh={0x10, 0x2, {0x3}}, 0x0) (async) sendmsg$RDMA_NLDEV_CMD_NEWLINK(r0, &(0x7f0000000240)={&(0x7f00000000c0)={0x10, 0x0, 0x0, 0x800000}, 0xc, &(0x7f0000000200)={&(0x7f00000001c0)={0x38, 0x1403, 0x300, 0x70bd2e, 0x25dfdbff, "", [{{0x9, 0x2, 'syz1\x00'}, {0x8, 0x41, 'siw\x00'}, {0x14, 0x33, 'vxcan1\x00'}}]}, 0x38}, 0x1, 0x0, 0x0, 0x50005}, 0x20000895) (async) r1 = socket$inet6_mptcp(0xa, 0x1, 0x106) (async) r2 = openat(0xffffffffffffff9c, &(0x7f0000000180)='./cgroup.cpu/cpuset.cpus\x00', 0x0, 0x0) open_by_handle_at(r2, &(0x7f0000000140)=@ceph_nfs_confh={0x10, 0x2, {0x3}}, 0x0) (async) setsockopt$inet6_tcp_int(r2, 0x6, 0x8, &(0x7f0000000080)=0x2, 0xfffffffffffffedc) listen(r1, 0x0) r3 = socket$kcm(0x10, 0x2, 0x4) sendmsg$kcm(r3, &(0x7f0000000040)={0x0, 0x0, &(0x7f0000000100)=[{&(0x7f0000000140)="35d5ed9e56f08b6fbdec966c9966392164012118a79e06e4b12c2c2018144e28d55cfe74f8a006271fb7579e07c1e5cc42d3dd6a3a366fddd20830c1f2c52b5f6d0c725a8721b215a5e1d086e4", 0x4d}, {&(0x7f0000000000)="7067dd0000c859ab2f0d84ec060789a989", 0x11}], 0x2}, 0x4000004) 00:02:50 executing program 1: prlimit64(0x0, 0xe, &(0x7f0000000040)={0x7, 0x8b}, 0x0) sched_setscheduler(0x0, 0x1, &(0x7f0000000080)=0x7) r0 = getpid() sched_setscheduler(r0, 0x2, &(0x7f0000000200)=0x4) socketpair$unix(0x1, 0x2, 0x0, &(0x7f0000000200)={0xffffffffffffffff, 0xffffffffffffffff}) connect$unix(r1, &(0x7f0000000180)=@abs, 0x6e) sendmmsg$unix(r2, &(0x7f00000bd000), 0x318, 0x0) recvmmsg(r1, &(0x7f00000000c0), 0x10106, 0x2, 0x0) r3 = openat(0xffffffffffffff9c, &(0x7f000000c380)='./file0\x00', 0x20842, 0x110) writev(r3, &(0x7f0000000000)=[{&(0x7f0000000cc0)="e1", 0x5603d}], 0x1) connect$unix(r1, &(0x7f0000000380)=@file={0x1, './file0\x00'}, 0x6e) connect$unix(0xffffffffffffffff, &(0x7f0000000440)=@file={0x0, './file0\x00'}, 0x6e) fdatasync(r3) connect$unix(0xffffffffffffffff, &(0x7f00000002c0)=@file={0x0, './file0\x00'}, 0x6e) getsockname$packet(0xffffffffffffffff, &(0x7f0000000580)={0x11, 0x0, 0x0, 0x1, 0x0, 0x6, @broadcast}, 0x0) timer_create(0x2, &(0x7f00000004c0)={0x0, 0x0, 0x2}, &(0x7f0000000500)) sendmsg$nl_route(0xffffffffffffffff, &(0x7f0000000280)={&(0x7f0000000100)={0x10, 0x0, 0x0, 0x1000}, 0xc, &(0x7f0000000240)={&(0x7f0000000600)=ANY=[@ANYBLOB="1400100029844b2c4159af2941769cf5ac2facb6689a61ee004e109ff5366e1585711a0a4547a1de308836e39ce2388a174d78d8babf29d0de15b253d23ca68bd9cd7e38d1b4676aac775aeb51684ef6953eb77b78eb419899a6293bf4e4bf6b00020d4cfd4accedc04db4f0dc0b83c4546507dce73ed65936f42098407880f7ad75a249b844111e10518e6f9e8a1231d152b858b38e16be8b023d0a171e88180fb510225b817fc5339133624ec8a3"], 0x14}, 0x1, 0x0, 0x0, 0x4004c}, 0x8040) mmap(&(0x7f0000ffa000/0x3000)=nil, 0x3000, 0x2000000, 0x40010, 0xffffffffffffffff, 0x3e46a000) fcntl$lock(r1, 0x5, &(0x7f0000000340)={0x0, 0x4, 0x6, 0x1, r0}) truncate(&(0x7f00000000c0)='./file0\x00', 0x0) 00:02:50 executing program 2: bpf$BPF_PROG_RAW_TRACEPOINT_LOAD(0x5, &(0x7f0000000040)={0x1f, 0x4, &(0x7f0000000000)=@framed={{}, [@ldst={0x3, 0x0, 0x3, 0xa, 0x0, 0xfffffffffffffff8}]}, &(0x7f00000000c0)='syzkaller\x00', 0x5, 0xf3, &(0x7f0000000680)=""/243, 0x0, 0x13, '\x00', 0x0, 0x0, 0xffffffffffffffff, 0x8, 0x0, 0x0, 0x10, 0x0}, 0x80) (async, rerun: 32) r0 = openat(0xffffffffffffff9c, &(0x7f0000000180)='./cgroup.cpu/cpuset.cpus\x00', 0x0, 0x0) (async, rerun: 32) r1 = openat(0xffffffffffffff9c, &(0x7f0000000180)='./cgroup.cpu/cpuset.cpus\x00', 0x0, 0x0) socket(0x9, 0x3, 0xffff) (async) open_by_handle_at(r1, &(0x7f0000000140)=@ceph_nfs_confh={0x10, 0x2, {0x3}}, 0x0) (async) bpf$PROG_LOAD_XDP(0x5, &(0x7f00000003c0)={0x6, 0x5, &(0x7f0000000280)=@framed={{0x18, 0x0, 0x0, 0x0, 0x2}, [@initr0={0x18, 0x0, 0x0, 0x0, 0x8, 0x0, 0x0, 0x0, 0x6}]}, &(0x7f00000002c0)='GPL\x00', 0x800, 0x0, 0x0, 0x41000, 0x12, '\x00', 0x0, 0x25, r1, 0x8, &(0x7f0000000300)={0x8, 0x5}, 0x8, 0x10, &(0x7f0000000340)={0x2, 0x1, 0x9, 0x200}, 0x10, 0x0, 0x0, 0x0, &(0x7f0000000380)=[0x1]}, 0x80) open_by_handle_at(r0, &(0x7f0000000140)=ANY=[@ANYBLOB="1008000002020000030000ddffffff000000000000000000"], 0x0) bpf$MAP_GET_NEXT_KEY(0x4, &(0x7f0000000240)={r0, &(0x7f0000000100)="204e04d517db538d4a1e5832c464ee941e82c25a5b4b1babf529e5dffa68b0335603eda2c1085e2a000e5653b4c6cb6520e204d075bd022c35b6cf8736785f823a9f42b0b9473b5c12f919bd4a5e657d898a11a4d8914952d95d7efe0e7584305d22b7dddb6a80146cf1f33f5bd30220ec35d6f517bb6bf272498458a703e0e18a4990774a9ff47b4cdb9d2abb187e0ba8feabf8a3fd47d444dd0104edaf153e9850e5974d0cf09d729539bf75d737b5dcffc2f043a5db65bb8a072b02b773f17c981007a502c8d87e62f601a7942f1f54f77e7e58a1ffac79fbfba4b767b45ca3c88158fbfe4e1cefd4d95a92d325738089acef920dd049", &(0x7f0000000200)=""/3}, 0x20) 00:02:50 executing program 4: r0 = socket$kcm(0x10, 0x2, 0x10) (async) r1 = socket$inet_tcp(0x2, 0x1, 0x0) setsockopt$ARPT_SO_SET_REPLACE(r1, 0x0, 0x60, &(0x7f0000000440)={'filter\x00', 0x11, 0x4, 0x3f0, 0x0, 0x0, 0x200, 0x308, 0x308, 0x308, 0x7fffffe, 0x0, {[{{@arp={@remote, @broadcast, 0x0, 0x0, 0x0, 0x0, {@mac=@link_local={0x2}}, {@mac}, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 'bridge0\x00', 'erspan0\x00'}, 0xc0, 0x100}, @unspec=@RATEEST={0x40, 'RATEEST\x00', 0x0, {'syz1\x00'}}}, {{@uncond, 0xc0, 0x100}, @unspec=@RATEEST={0x40, 'RATEEST\x00', 0x0, {'syz0\x00'}}}, {{@arp={@multicast1, @initdev={0xac, 0x1e, 0x0, 0x0}, 0x0, 0x0, 0x0, 0x0, {@mac=@link_local}, {@mac=@multicast}, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 'veth0_vlan\x00', 'ipvlan1\x00'}, 0xc0, 0x108}, @unspec=@IDLETIMER={0x48, 'IDLETIMER\x00', 0x0, {0x0, 'syz0\x00'}}}], {{'\x00', 0xc0, 0xe8}, {0x28, '\x00', 0x2}}}}, 0x440) (async) setsockopt(r1, 0x4, 0x80000000, &(0x7f0000001840)="eb", 0x1) r2 = openat$dlm_control(0xffffffffffffff9c, &(0x7f0000000000), 0x2082, 0x0) sendmsg$kcm(r2, &(0x7f0000001800)={&(0x7f00000000c0)=@caif=@dgm={0x25, 0x1, 0x16}, 0x80, &(0x7f0000001780)=[{&(0x7f00000001c0)="8ce378653a8fb568ba2ecfcf41c45aa607f76937ca12d27ba4cbf67657d4b1d3cb67e224a656ff41fe8bbb122457880008b64a4acab666a6205dbe292cf4df98ce9da170a1ace0dfacb55e28ef6abc3f30e3510cb33c5677077213551f8e38da46f55b57cd6ef54383cdc0ad0294f20ac5967e060e02ca2af4956209f9b60259d68e526137595a3cb15bff4bdfd7639edaa723b05fec87541004c211", 0x9c}, {&(0x7f0000000140)="cafabe3b8dbdd32fab354c4f59720bf6dd4103f82c2f86a4d9f8f49a3dcf3fa93ed98bd122768f7d954e9cec1078c7a030073ffe545ae3e742193fe08b", 0x3d}, {&(0x7f0000000280)="7e84403461b1f02bd6891cb23b6525c9d9e9c385326c132f512f43a3698ec2c4edcdc494717b1dd62013d649f5f3fb85b5efd83bce8c9f763e7eba29fc66c1c379c7fc1f9e27fbf49e011ed6cac8b82a2be411c86284afa141d01d198d476cd905ae94d26f8167aac3f349a2d552064700577cd96958d89020cb50f1e0de6d73a65d34b40504d543ab0ceb91f24c0e4a924c10b01f8201a332d3b7dd53529bd1c4e28f4482eda8db08778d553fc72884fa9fc4714987e197b91b752300917da6340e29161574c5ba777b81be14572ba08e18cfe8262a6bdb6c355b06e8a08d5017554378c54c8bc6f920419672b9cb01fdf18bcb1b03e642facffbf951297418b6270f9d4c911010ad506c3d4c1d93624d974b6ad951166828f950578d16c647433411ed61ddeb5a0a0f1764c77313c3779946cbd5f5dc21706df6277c78f5aef398e479151fe608c2fecf0479885e60042a25c0c2d050edb1f9f693d6b43581db4705c7e912fb2ea1e774e3cf21a0c3f83c407d74cc9a113188f1aa55e7e5a2d3e3d0e213f80e404b4f9a1f32a438137a9dc66b7f17d751e7760361e9c7fde216fa2f3556758242a2be8fca01abda9cd97a2cda0e38544efb6636b68234a7c05398413413f667c1446f7a9d136a4ebcd6185f35ca52ca3dc1e98ed6dda39005e7847326b6951faf5e3af609087d929815add34986c817b6bb8f824a8f29bc24d78b44ec03745d22f456cf47d9298c12f35d4ac0fd39186521b1137e1cdb5a5e5d0cd2d827ac81c19e7548aac9980da488462c3e1ce881c453fea95434071d519c026a6842657271700d5a07a0431825b6339738d4f907292201df5a7007fedde4445f8771b2fb2677cdab32f9fc7d0e6b9ecd3834fd414d5ee48add7192e68d91bdd0b1f992a2bb2508d1e69d506c9a92ac1f9e6eb26f4cbf05789786f468b2da76bd64937a0c7652064cce29a2f229c728c392ba0517c313c0d71d116d85df4a6d4d9b5c75e3174245090b09887ba718d071aa8ceb87888c94605a7c80ddf4190acc643a9f96754aac7b8123ecee2352f83492a9b738528316174a5ca34f577aa5f155372fa3202e49e5c111b8adb7c49bfd8e74e50c173d6979cfd856cfc1211d746034c3f390e1a27027d6477be9772cf4f8029387eef7f97b314a56e824f9ccbff28ba8af7be494941c0e00081a4328ce866b28a86d416c06ac30145cce4cc6d1e4cae509b4798e3f2c78046a4c7430ae38d9881b241fc7243849bf43c0427c8c2f151f584c5c7549525184565d27d789a6a6d6b312291c304d5e93ff6033762634be55bb314b8e09f220e5546cdd00377f35e368bd6f489a23825f23cd71ccf0ada4b534b8aa87a3a73fb2307d1c8aebc167f687149f34ef5ef2ee2b4e8ae8b284a39a2bd2d827b393ffb5945892e0764c7b12f07eec4e0d644821ce041d812d8b082bf9db1113e018f5363f29d1a67f008e8b7e9f8664ff68f5b978004f05d01084dca75086b7078c392713a6d980523fb3ff00b57970794dcb674c636eea52aa8d2242e628ee0383afddeefed2cc1645baa25e6b0a67df2445ca24e0a58715d2fbc94a9cc310b3e0d5bd26502c9786ce1de34a2a668d0d5b07d363c7584708d6e55a4ab9996872eed15663cc076ebba81897e4ab4b06ca7d596ed5f260913fcb0c194724208423d09177b9b593caaefa2dc57edd332ae97afa1ec339b13c88a931310adf8b1a7a9420ff6d8e6c3e0524aae603929d356514392540c13bed3be4540ab2ac1d711a8dae5f89bdfaa987203712e7ebd851be3a8768676ecf4f450ac688884285391c37063a4b952de013e7911fef0c9be830f2867a168a971f42db7672a2c0e58f6f09f1706091d0c1af5cfb0c6433e5e712830c171c2db1a6e58dde49754a61f4f19d39b98a9e5ba27dfc62c675c5fc40385f27ff3469a3c4224d755dc28cb4f028f1dcf381e87ca21689b707e087053de08c36a57e486da1f8ba9111732bcdd6b5e4a283bcdaf44d400b6a6d4942b2159abc44ba7b5d99c6604750c812c940df22d87e6288191b2e18abf4b4878990263054e4ee45067b64ae79df377af86c7257617f646b386a607561314d5529a7b053c35463c0af0bf86e1a4402335f08e688b7998f836799c494e2ba081cdcc94dbf7921adc0bc3420de4575f2443279e243de1fdcd5456f06ce7bed2f45f88b1f5c9e962a08bc621d8eb89dc6d79a943e8f70a5b7f8331482e1aad2fd8742f5d5ed62f71cbfea79834553f727de3d5a997a1239a070ae0e27f2619fcfc761996f593abf08bea720892e85275ba286d9dd582e956728051022c4b1d8f3fd49f0b4581eaa55f4d1ee4cb39b665e58673f0dc91ab34a4b57c8c0e0abba92c6ec9b4623804befe72ac547f8ce2eac537130b6994a9933b84d2aaf0c1beaae331d301f0468a2a2422ea1300013753e504a9a430706110b3f729e0233cc5c2a61e0857acd5f34e32cc37f73375bbb7c06ef92199e241ab730c81ec7a086b228ae7e65d264e1256e82e3f9d890a0fc022c3c60ed1d50f1da635387e31b0c0bf4d0775d635c3efde2168781f8b000acf70ed11306b47c9e03b874fb6741389ea05874cff953c995e5793320506735b485aaa4b30f629cc280daba9401a37c65de12b68e19d3017ba00f3ffe5332b9e928124c9ab5a760750a9eeb883371bfa516683d6e09d0dfa9acf1bf2552fe3a237bb3e2d960bd498f0ae6c4929ea9afa7ca923e4e5290d631cf78fdfead4dbef42fdd28e18de45d39d58e42cd43435a95a37250b26915c049cd9c5b114cfd8179ad3be80e5910e15b248bbed1b7bab81b56c656887acf3dac8f53ad1396bcc5ddcf562eb73a5e70e2f1bd2111c07ea1c804beb9052cd6e2df9515ca8e7f0ef14ec5f2ee5d88aae243ae889d1211848454838cbc639141013f36e0dfb8365cfb4385ec3ceab4c5dca2681a80e7f759e14d0221b68166ca08e05fb3c46c6982853bd100615b57b0ec58194d12f8b432223dd16173f17289844a823d0edb7346196faa108c98d1f8f3de51e57f46cccf1fe92e209d6cf7543d8a7dc7000816eb0e857cb0fd7cfe7a7596a1df054106fcd038abbea8b8c6c2b4664ff56047d8f1a1d68508ecd7c864ca77a27d8625f10fed8dbc9176973bc7a365f87dafccfbc96ab637294b2e0a98ab2871d3ac7ed6fed57476f62b9c6678ba364ff67a0b8453201674bd066452948288f8e71c6df3427758a4bcf275dbbaa960c91c8368098fad4d1b76ee6f9e766f1697e23f7a9b9af8a082e2230d62f04d8586dd29ce1325f9c3a5cd26ff6a97530d7ea87ee1ec02b826a56671b6b813fabfcf2c9af31e52155d54f2b3cf1f8be5c01127d28b0def34aee9506534bf39d65bdbfc46eb88542e25690ec2600fc37a5eaed6c4f1f77f520d3f226ef0f510f6d5f4d86777f6cd7b17f70034a42073f34143f2c2674a4f8aafdef180f6cfc7105a0fd5ff56a93bb155e24f71b81b63853540098961eb55577fe93c9606abcae06a87e17bda57abf8169f092c2c3e9c3cad03e305e33dbb6e811f759855feea41571a30f8ff7c1122512859cf8b5aaf08c51d148918b433faeba9b20b58f529c65100f5e5cabbb237a635cc9e7f5938f47fef0ce9c6ab642450c06c2858845fc03cb2f3f48c771c13a6db6af17d1e434c721045aee089cb404f89fc56a1cfa843e2602cbc159eb2e0877cd41eac1528f6eb7df03e5b72bf1a1a1b0df7e0a5026a7ad5dbb6519afe3ef9a1d7aeeedfa17d85e3790f586f0da9b1b1267253a11103b13f8d8ffa4ef2c3d8fa7c0c22b5d1b25ef074bf5fd1d81b7d38ad819a6f285452f5085e2ce9d08a5caf404cd8a7bc2029a721cdb488cb7982b75540e4429fae08734fe5fca805c4019076d568fe9ea83150072848a9779427373d7523817c27ba7404eb1cce4c41eb321cf197cf7380e2372072fefb4d49cd0fd111964e0f1657ba7e5c610a550a80f3968ad4bdbfa168cf861ad7d9a940f338ac64d947fd9eecfc9ed8e58f161a5c7a0c9a33f02f8731105f71cb8a4d918a9c070757f5d97a9c698b503334a9e2b50d9060a83652313bca7d9aaf57150a85446e49fa67bf89c007005947ea1f0d36900a7c95571518025d145551ec939fc0dcc4e510de2d2704620c47227d69d04f7fd826dcebf51e825abe6e7bfd0618683f6c32c436af91828b8a68deb2e6366f6fec7da12654e8657ac7946c1c1e7e74ac15740c127d17fb26ee0d5509b7f0e2907ab550a8bdfd5cde3841dc7cfa130424fe66ca78f4739d09b87f1f16248e8c276be2959774be6bac376b366b59fb20dcb312c15edfce8fb837761c3aaca32b1c818a2cfad444576144e048b761d5f4bd8a9c359f9d2a284a4b607182d1c0e0fc64d8a37684aaa2d0028116a1fe9839d11261991d3287a162095eeeddac9eb9e46c936107fd9e98b0f2a304672e958b6719e856d1fca43130b04756618ebc3f52e2eea3325b3e78cdf1c704ac0f6fcea3b96300f51752cbf552a1cd6e00397b2bcd4104542b9f384911edd1edbeb95a4bd579f5852ed77fae16d30d2ddd8e943d5d1848ed2c9b0e73c9e5da9dcd00527c67cc23a391cfbd4130182e6b5a17204b5a0353ae8f02fb7435467d62b268a10902cd5761ab6f3de96d328fcf3fd30d8030211c9c2b536412c91850f731a2c73aa80651beebc7b3730b635506f5b6ab60298bb97e7f0876b185ebfee7b32f5b815d66cccba8dcb8a74641884d7c63666b92f29bd348cf7a3072940ae817f8f71d7187591f9d3e1fa6bc1e5062e3e9ca55c3a9310c9d15bec1d508593c2679ae8af503e2701d5558160d54ad5a72af8921f2eea615726573b84b8721ffa182f4ecb6bb35a0d1483b17a6d7561bc66be9da3eed54307d49622a671d2b1aff8ad582322537ddcec708c39944227ad073c7eaac7eaf47b76aa2fc48c62b223763d2038657800776eda20ecc11cff9ab03915df8fc2338bc932cd2978105c10a1bf4e5316be280d5936508bc57c3e63301e87a2fdfb94c7f2dc9fb58e93096e7a8127ab3f557cb2daedfee7aa7ca372ea011b4b7492ca6a651417a07778073856963c1d5359d37967b2f64bedbf4b5d796bfd536ad0e8ac904baf0e823bd8360808764d25c6a9047e5d833b092aa2e77a3206200071ecedd08eb5711f289aa5e03c57d68850811db2dcdf637f14206e052962f1522fdb6b574b69df6550b0e2f666c13be278d443f9bafbf19bc0af2c0827e58c55932ba4b73183d98bc7855b3003dfc3cd70a86b81eac6b8955fad8b9b86f4215942c357b6678fb669eab51105bdbe0d20350acebe99b52449e28b9df77b5b4f12a8adc46eeba94d5d1bddf6979a74bc0f9f23b8a88887e7364ef05fa8546c22635bf0e200ddd76f68d4481a08d4dbdf32465e724fedbe0cf65160e247ce56f93fbe284663b21a8d454449738801d7880dbedbe756492719335e2da8ba5b5bec529e32d3991f064ab3c3ea71e799fc2a38e0ebaf907ee282378f2fd566d01b786eef896e3abf7a14b0189dcd03eddc86952c50a95917bf6bb67f87f610964ef092103871a51df52e136d9f6353bd3f396e2eea6936d1bfdde7fa2877295d2ff0559fbd513bacc225423a521ebb79ff0e01f79cff86a1ad45be91e5b3e7d5500a56de4a89b76e08273e392215267436445f8054a8ad47d864f14f81e00997dcdce7918c2115fa1e6d9659eca3cd4646c7027cb5c248106606b2cec844a5354e538142a6f84edb3ef9c9f7fef90d00879e75e128ed629d076bb18", 0x1000}, {&(0x7f0000001280)="6777fa3ca36c1c52c6fb24a6fa884e71f6806cc713025871094aedbaa44ef09bcadd1675a413a951a2372af398f7edf67f8ae729a8aab8c19e9aadbb6e2271a906f4cea25cda8ee8c3024711530ed9a568e7b4adddba2544c29a72491538b87de2f2951295f86c5bd70c836e3bdb7de9c4cb3924a7589a0349b69e2dd6ecb18cf5110aa1a56cb8aa4e5d04209b020208f9faa45b70e942bbecee7cb4fe521cc40b1aa0f8ffed57d7e4c12cc7e4937d5f04fbbd86ad7fbfd6686c1874b6e97273e997588743aebabf417173db5b2227856dad3bf45cbd585ec11fbba3e4585e4cba2d29c5a2e116d03dbe9e1de3819f84874f90bc", 0xf4}, {&(0x7f0000001380)="8e31593c45977838a7ff121e0d13938ef54e25361467691970d0484afd8c505805ed1840c3ceb468c626ab729752ef48472c9d20bf7883b76942159e1067e09e32da21ab8fe39df2733c42b11ce9b6cbc59e15913a00f0c3fef6c4e7f30744ff8dc4a3d1ad286133568bd87bb08f622161656b6ec78dad71389a5b7370ff546ed1ee499fb9501666229e82906307d4922cf3ad61da6b7d0a2b2cb8b598b05f66bf9976807d1398597009b180935407cdeeb38e397d3edb225ba2d483f2be0983e853da7c93bf64f486c3f305df8a359911b5ba4e4f4dac1fae47dd2d3b75e94128da", 0xe2}, {&(0x7f0000001480)="7ee295bc576cb294f032d1122ae373df48054316ecab0d483f71da81ea121a883b3fc01dda88f4fea0eb36596fb3cd1fd7b8cba0eb635816135e1e6272d4754a0d856ab2ee9d16c3164f62b8a7d3f2a56199f03c2a921b9962ae14ca4d8d094cabfcce0abd274db33ad6648be5cabd4b0ed32dc27bb6290f2f778df49514d0a94315e52b76f1008b5f2496c588e84acb3577d329d6f7a08eb3e7d42aab532613157d483b16b1d11884a9a61009193d38b03e0ce6ac86ac390dc09631c6a068d0fddc26111ffa5a11723e4729c2e088d48bed3ec158be5e5e4d7a4b8f8925d74fb5f658054e37e619eb2b655af4d749b86e3c4d", 0xf3}, {&(0x7f0000001580)="17ac382439e2c754e8243bfe3915bf517ed2a72e948f86df60ebf581eb8eb7fcc8237e33edbd00a698723165ca4f308ca30d359649be4316d9ff1cb89ec418980fa27d60c29fc6872783094a2cb43844eb9bc4ce1d60d4e6b0d06d340ad85f299273816ead23d76277d6fec0e5ab695358be7b797e5289ecaaecce4a80555a4ee4904e1d6596e5211055c4477a2cd599c43ca3be6cdc19cc2937135c86b573c1ef8ddbb82a83dec8ac19809e3efad5498ef27efc2f00c8cb129e96cde78a50b4c138f822db8031b4a820d6a3b149285da395efd885344657db69c0c0db1dd507ed625672cb0ccc938db136bf43c99ad36fedc16fdbb1fbf8ed65fc272f", 0xfd}, {&(0x7f0000001680)="a7e56d59fc54a3949099ced55feb3ce3601f81cb512c8f292e53a1462965cd74e92e320eed2d06065c73844ef1f440378f1c2a4b21a14c3a23d64d54c16c23b37f6217b97f9d99c0a99863113f61b71d789ad81671775a15d7753029f87391657f618406f6f8a023d92eb302f1614412be82a55281d8074a42bfdb41d6d156779c983056fb6864a374e62c8e675bde4f4c847c8476d44ab241e70d8fe766902eafd79bc120deb18f1736bc7e0f74538a8505dc3e70d157d06e0db270db698df0e3f1", 0xc2}], 0x8}, 0x1) (async) sendmsg$kcm(r0, &(0x7f0000000180)={0x0, 0x8782559fc2aff2e2, &(0x7f0000000080)=[{&(0x7f0000000040)="e03f03002800050ad25a802e8c63940d0424fc600c0018400bac0f000aac0f0037153e370a00038004000008d1bd", 0x33fe0}], 0x1}, 0x0) [ 170.209954][ T4251] netlink: 147240 bytes leftover after parsing attributes in process `syz-executor.4'. 00:02:50 executing program 0: ioctl$TUNGETIFF(0xffffffffffffffff, 0x800454d2, &(0x7f00000002c0)={'veth1\x00'}) r0 = openat(0xffffffffffffff9c, &(0x7f0000000180)='./cgroup.cpu/cpuset.cpus\x00', 0x0, 0x0) r1 = socket$inet_tcp(0x2, 0x1, 0x0) setsockopt$ARPT_SO_SET_REPLACE(r1, 0x0, 0x60, &(0x7f0000000440)={'filter\x00', 0x11, 0x4, 0x3f0, 0x0, 0x0, 0x200, 0x308, 0x308, 0x308, 0x7fffffe, 0x0, {[{{@arp={@remote, @broadcast, 0x0, 0x0, 0x0, 0x0, {@mac=@link_local={0x2}}, {@mac}, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 'bridge0\x00', 'erspan0\x00'}, 0xc0, 0x100}, @unspec=@RATEEST={0x40, 'RATEEST\x00', 0x0, {'syz1\x00'}}}, {{@uncond, 0xc0, 0x100}, @unspec=@RATEEST={0x40, 'RATEEST\x00', 0x0, {'syz0\x00'}}}, {{@arp={@multicast1, @initdev={0xac, 0x1e, 0x0, 0x0}, 0x0, 0x0, 0x0, 0x0, {@mac=@link_local}, {@mac=@multicast}, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 'veth0_vlan\x00', 'ipvlan1\x00'}, 0xc0, 0x108}, @unspec=@IDLETIMER={0x48, 'IDLETIMER\x00', 0x0, {0x0, 'syz0\x00'}}}], {{'\x00', 0xc0, 0xe8}, {0x28, '\x00', 0x2}}}}, 0x440) open_by_handle_at(r1, &(0x7f0000000980)=@isofs_parent={0x14, 0x2, {0x7, 0x4, 0xff, 0xfffffffc, 0x9, 0x3f67f4e2}}, 0x1815c1) ioctl$TUNGETDEVNETNS(r0, 0x54e3, 0x0) syz_read_part_table(0x0, 0x1, &(0x7f0000001b40)=[{&(0x7f0000000000)="5244534bb0bec2da09ebee962179cae44139b7dfab10c3e84d543636eefc2b807a6fad71bd2420fe39973cfad4c931028e3215397780dac1409a9df0671875b8631296aef610d69438e12430793a9a5d1ced5ae5c8bd9140a8ff8ea745c7b09d2fa46d5eb725102292114d35fbf4e05b8002206d3479929a96065c9c2208385cfa753828f9d5ffefc33e5e131841038d2055e70a109273e59ab489561b3130376bb6c5fc2ed43fa75caf412887e183e85dfe57e522a0ddb5ceb18f44dcd578200e5056702a3e2b32bef36ffec6d87a5937a80fa475a5bad96d230bd82f840a0652856450f4947a5e01043fd6bf482acae1a9faf088904de6a0483c0d871bd321a779dd3b70abdd9325f1780b121c2b5de1817a13f6ea2c6c13ec944c6f91fb13e1edc49165bd243ee42bb09728c88b60ab7d04ca267e568a6f1a5d40cb3ecdb98d783af04cabaf42c0d422c0acda1aa41a3f21304ce9b38501df7b450c7ed4b5741eb020e3326d38a17ee31620506fea0bd45bcc3695afa8042322cfe695e016b6cc8b4c4346ed72ac5126c8aac307a0c3ab69fb0f0c1826fbac349035269829ef3a7b236d3d31cb092cc83e34d5a4cafbcc764dca63f46c32d65142e9afd8e18b21833ebbf55dd6b96d1f973d703100dcb04b1b8569143f4c6ddcfd4c90a1fd9e81cb8f9b9e2a58f38a9415394657eceb00"/512, 0x200}]) syz_read_part_table(0x9, 0x1, &(0x7f0000000280)=[{&(0x7f0000000200)="238ee5b45b82ca9699eff650c4d072e68474af192e897a179e191ec28c1869697874ca2c42e3bf0306393ad7319691ecb66ba5e2a8fa4c3591f95c221483b76b60c121fe9cf62109b377176d29d9c1fe08efdaf8fda56a84", 0x58, 0x20}]) ioctl$TUNGETDEVNETNS(0xffffffffffffffff, 0x54e3, 0x0) syz_read_part_table(0x3, 0x9, &(0x7f0000000880)=[{&(0x7f0000000300)="8b57e59d54f6f2b7e2e6cbc37dd574e361ea2ae3d0fc6d0bf103e459b6de5c1b5b4d6c0e6b1fc6254cd2ce4a372919a9695723aa277ecdb40aca24f884d8a08a204e33a440ccc9f5a4d2c2f1065f206f553ca3877a8dcf77a06db1fe0f04c5fb134c7b93dcc1d9b7eb72", 0x6a, 0x7}, {&(0x7f0000000380)="900e47bfb1db785e648900e304b047a6c7b45b314fa3b1921bd8cce46747f0a69d29f426b663d79f8a4817933321fad50f666d45fdb97a530fae9bf047aa07304cc8c7d5fc38173f174067a5e978af59e93a222877039e81f6a4f4c400e970cfc44c3bbb5df2a2e0a9d0864d3caeed760e95cf197804b208cbe6ee205f8b89f07679c2bbfa5c0688228a46591eca1980864842b94c634f668683", 0x9a, 0x81}, {&(0x7f0000000440)="0a7d72246534e4f4501da90cc82487ab9f070c23d68512706e6650afabe7f98655e2e843a1c4d28232f10c2901def8e50ccbd13f8ac510ef04e4caa7bd159c2fd33b229be3d2c2ce386a1a8f28b28ea9eee808288bee8f810092b4f17d2f37fcb62b0a3b9fee0919087800c9d319b7696d8afc13dc54d2c5d0c9c90497ab1d6dca1263a4e62b72c9fce83c12c2976af201c92d7dccb3e99b096fc88dab6edb1fe118554b045d0de1b1f8e2f349ed764fe95bb55d39c86f63f58a9dd4312480d3121fc8c76ef3dd2969731a17fa49dceb55da1f7eba491348fa1768f1d035", 0xde, 0x6}, {&(0x7f0000000540)="99b89c5ac54133843dac0abb171d7089408eea077b1c6610a290fbbad1ba8d2927858b0c974d48af8e2f6817dccc78bb2bfd7fbb15a5bd4016bb3061a1af204f29e408f3fb70ea367e", 0x49, 0xfffffffffffffffc}, {&(0x7f00000005c0)="128b28e0813d0c0ae1e0834e49549e7966b349e54e55ffa2b2f025c5f30581ae953fa4ad4d7b7a5295", 0x29, 0x8}, {&(0x7f0000000600)="4845605cad0f3fe93da31c7d50570e6e38414222216921f6c4dfe83b3f07dd014c579d7154ea53cb505e3993080776a81c79281d58914e651ee480d041ceea7db2f89fce6adbd92601b8e0bad040be11704862d1f67d8357353600c5d413c2c3c85368a5d2439ce57fb123b5d15ae346", 0x70, 0x8}, {&(0x7f0000000680)="233e03a2b8b1bf090361a67c1c113d0037a35799c1cda345f734a8e405cd727f4c048207f42f5c88c9a733d3802a75504bc4b973bd6f3b83ce1c498cf6071c0dfccaebc5097fad228cb14abb6a031bcbd5e6d5a96654b7ec361804677f856061b0404f0c7f665f576c706ba9f2fa01c4554c9b2de69db0db2296230794ef72014a81bd6e98ea583965a3e55d4dba16a002fe3566b180c9803de1b7acb10c58f73970938505c0f21be0f06b324e4b234719dcd1aaba", 0xb5, 0x77b02439}, {&(0x7f0000000740)="effa239a5c2febd9397755e342ad8143dd0f0ccd88f9cdbd7affb38a54c0e70b1123b7e3ebf5702fc72a78c0629bca973bc1a2c0fcd9b1689488991c32a96aeeb9534ac4865ab7865610bcaacdc326571f1540cdcf357e72f29f6b1544aabdabdc56846fee0dd20152d9e6a1c6f81760f69beedebc516924f82d9cbe70545c99d01ed7d93c85dd2f61f785bca60e0166eae81fc5e58839f735d5ab62235bd351dd71ee28f99c9d51a4d273caa9b20a9d0ebbfc6729efefa0e65777e7c5590aa45551076ce874c7d860aea3ba54dd9f0130b2989a3b10a68336e55ffb030afa2c5b3260d616d2cff36446d5b21c9c42d68b4a93f25c3aa21c2d6b194cb38c58", 0xff, 0x4}, {&(0x7f0000000840)="194232a03a3689bd18b4b2e020e8", 0xe, 0x1f}]) [ 170.222194][ T4257] loop0: detected capacity change from 0 to 1 00:02:50 executing program 3: r0 = openat(0xffffffffffffff9c, &(0x7f0000000180)='./cgroup.cpu/cpuset.cpus\x00', 0x0, 0x0) open_by_handle_at(r0, &(0x7f0000000140)=@ceph_nfs_confh={0x10, 0x2, {0x3}}, 0x0) sendmsg$RDMA_NLDEV_CMD_NEWLINK(r0, &(0x7f0000000240)={&(0x7f00000000c0)={0x10, 0x0, 0x0, 0x800000}, 0xc, &(0x7f0000000200)={&(0x7f00000001c0)={0x38, 0x1403, 0x300, 0x70bd2e, 0x25dfdbff, "", [{{0x9, 0x2, 'syz1\x00'}, {0x8, 0x41, 'siw\x00'}, {0x14, 0x33, 'vxcan1\x00'}}]}, 0x38}, 0x1, 0x0, 0x0, 0x50005}, 0x20000895) (async, rerun: 32) r1 = socket$inet6_mptcp(0xa, 0x1, 0x106) (rerun: 32) r2 = openat(0xffffffffffffff9c, &(0x7f0000000180)='./cgroup.cpu/cpuset.cpus\x00', 0x0, 0x0) open_by_handle_at(r2, &(0x7f0000000140)=@ceph_nfs_confh={0x10, 0x2, {0x3}}, 0x0) setsockopt$inet6_tcp_int(r2, 0x6, 0x8, &(0x7f0000000080)=0x2, 0xfffffffffffffedc) (async) listen(r1, 0x0) (async) r3 = socket$kcm(0x10, 0x2, 0x4) sendmsg$kcm(r3, &(0x7f0000000040)={0x0, 0x0, &(0x7f0000000100)=[{&(0x7f0000000140)="35d5ed9e56f08b6fbdec966c9966392164012118a79e06e4b12c2c2018144e28d55cfe74f8a006271fb7579e07c1e5cc42d3dd6a3a366fddd20830c1f2c52b5f6d0c725a8721b215a5e1d086e4", 0x4d}, {&(0x7f0000000000)="7067dd0000c859ab2f0d84ec060789a989", 0x11}], 0x2}, 0x4000004) [ 170.249872][ T4257] Dev loop0: RDB in block 0 has bad checksum [ 170.251300][ T4257] Dev loop0: unable to read RDB block 1 [ 170.252577][ T4257] loop0: unable to read partition table [ 170.253972][ T4257] loop0: partition table beyond EOD, truncated [ 170.255429][ T4257] loop_reread_partitions: partition scan of loop0 () failed (rc=-5) 00:02:50 executing program 3: r0 = syz_io_uring_setup(0x73d7, &(0x7f00000005c0), &(0x7f0000ee7000/0x2000)=nil, &(0x7f0000ffb000/0x2000)=nil, &(0x7f0000000380)=0x0, &(0x7f0000000100)=0x0) r3 = openat(0xffffffffffffff9c, &(0x7f0000000180)='./cgroup.cpu/cpuset.cpus\x00', 0x0, 0x0) open_by_handle_at(r3, &(0x7f0000000140)=@ceph_nfs_confh={0x10, 0x2, {0x3}}, 0x0) mmap$IORING_OFF_SQES(&(0x7f0000eb3000/0x3000)=nil, 0x3000, 0x2000004, 0x12, r3, 0x10000000) syz_io_uring_submit(r1, r2, &(0x7f00000004c0)=@IORING_OP_PROVIDE_BUFFERS={0x1f, 0x0, 0x0, 0x4, 0x0, 0x0}, 0x10001) r4 = mmap$IORING_OFF_SQES(&(0x7f0000ee7000/0x3000)=nil, 0x3000, 0x6, 0x11, r0, 0x10000000) syz_io_uring_submit(r1, r2, &(0x7f0000000280)=@IORING_OP_SYNC_FILE_RANGE={0x8, 0x0, 0x0, @fd_index}, 0x0) fsetxattr$security_evm(r3, &(0x7f0000000040), &(0x7f0000000240)=@sha1={0x1, "0700e7b3be197e553af23b790c9cbe2d86bf1ded"}, 0x15, 0x2) syz_io_uring_setup(0x6717, &(0x7f00000002c0), &(0x7f0000000000/0x1000)=nil, &(0x7f0000400000/0xc00000)=nil, 0x0, 0x0) syz_io_uring_submit(r1, r4, &(0x7f0000000840)=@IORING_OP_SENDMSG={0x9, 0x0, 0x0, 0xffffffffffffffff, 0x0, 0x0}, 0x0) syz_io_uring_submit(r1, r2, &(0x7f0000000180)=@IORING_OP_MADVISE={0x19, 0x0, 0x0, 0x0, 0x0, &(0x7f000004e000/0x2000)=nil, 0x2000}, 0x0) syz_io_uring_submit(r1, r2, &(0x7f0000000340)=@IORING_OP_OPENAT={0x12, 0x0, 0x0, 0xffffffffffffff9c, 0x0, 0x0}, 0x0) syz_io_uring_submit(r1, r4, &(0x7f0000000580)=@IORING_OP_CLOSE, 0x0) syz_io_uring_submit(r1, r2, &(0x7f00000001c0)=@IORING_OP_READ_FIXED={0x4, 0x0, 0x0, @fd_index}, 0x0) syz_io_uring_submit(r1, r2, &(0x7f0000000080)=@IORING_OP_READ=@pass_buffer={0x16, 0x0, 0x0, @fd_index, 0x0, 0x0}, 0x0) syz_io_uring_submit(r1, r4, &(0x7f0000000200)=@IORING_OP_TIMEOUT={0xb, 0x0, 0x0, 0x0, 0x0, 0x0}, 0x0) syz_io_uring_setup(0x49ed, &(0x7f0000000080), &(0x7f0000ee8000/0x1000)=nil, &(0x7f0000002000/0x2000)=nil, &(0x7f0000000000)=0x0, &(0x7f0000000100)=0x0) syz_io_uring_submit(r1, r6, &(0x7f0000000400)=@IORING_OP_SPLICE, 0x0) io_uring_enter(r0, 0x2bc3, 0x0, 0x0, 0x0, 0x0) syz_io_uring_submit(r5, 0x0, &(0x7f00000003c0)=@IORING_OP_FSYNC={0x3, 0x65, 0x0, @fd, 0x0, 0x0, 0x0, 0x1, 0x1}, 0x6) 00:02:50 executing program 4: r0 = socket$kcm(0x10, 0x2, 0x10) r1 = socket$inet_tcp(0x2, 0x1, 0x0) setsockopt$ARPT_SO_SET_REPLACE(r1, 0x0, 0x60, &(0x7f0000000440)={'filter\x00', 0x11, 0x4, 0x3f0, 0x0, 0x0, 0x200, 0x308, 0x308, 0x308, 0x7fffffe, 0x0, {[{{@arp={@remote, @broadcast, 0x0, 0x0, 0x0, 0x0, {@mac=@link_local={0x2}}, {@mac}, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 'bridge0\x00', 'erspan0\x00'}, 0xc0, 0x100}, @unspec=@RATEEST={0x40, 'RATEEST\x00', 0x0, {'syz1\x00'}}}, {{@uncond, 0xc0, 0x100}, @unspec=@RATEEST={0x40, 'RATEEST\x00', 0x0, {'syz0\x00'}}}, {{@arp={@multicast1, @initdev={0xac, 0x1e, 0x0, 0x0}, 0x0, 0x0, 0x0, 0x0, {@mac=@link_local}, {@mac=@multicast}, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 'veth0_vlan\x00', 'ipvlan1\x00'}, 0xc0, 0x108}, @unspec=@IDLETIMER={0x48, 'IDLETIMER\x00', 0x0, {0x0, 'syz0\x00'}}}], {{'\x00', 0xc0, 0xe8}, {0x28, '\x00', 0x2}}}}, 0x440) setsockopt(r1, 0x4, 0x80000000, &(0x7f0000001840)="eb", 0x1) r2 = openat$dlm_control(0xffffffffffffff9c, &(0x7f0000000000), 0x2082, 0x0) sendmsg$kcm(r2, &(0x7f0000001800)={&(0x7f00000000c0)=@caif=@dgm={0x25, 0x1, 0x16}, 0x80, &(0x7f0000001780)=[{&(0x7f00000001c0)="8ce378653a8fb568ba2ecfcf41c45aa607f76937ca12d27ba4cbf67657d4b1d3cb67e224a656ff41fe8bbb122457880008b64a4acab666a6205dbe292cf4df98ce9da170a1ace0dfacb55e28ef6abc3f30e3510cb33c5677077213551f8e38da46f55b57cd6ef54383cdc0ad0294f20ac5967e060e02ca2af4956209f9b60259d68e526137595a3cb15bff4bdfd7639edaa723b05fec87541004c211", 0x9c}, {&(0x7f0000000140)="cafabe3b8dbdd32fab354c4f59720bf6dd4103f82c2f86a4d9f8f49a3dcf3fa93ed98bd122768f7d954e9cec1078c7a030073ffe545ae3e742193fe08b", 0x3d}, {&(0x7f0000000280)="7e84403461b1f02bd6891cb23b6525c9d9e9c385326c132f512f43a3698ec2c4edcdc494717b1dd62013d649f5f3fb85b5efd83bce8c9f763e7eba29fc66c1c379c7fc1f9e27fbf49e011ed6cac8b82a2be411c86284afa141d01d198d476cd905ae94d26f8167aac3f349a2d552064700577cd96958d89020cb50f1e0de6d73a65d34b40504d543ab0ceb91f24c0e4a924c10b01f8201a332d3b7dd53529bd1c4e28f4482eda8db08778d553fc72884fa9fc4714987e197b91b752300917da6340e29161574c5ba777b81be14572ba08e18cfe8262a6bdb6c355b06e8a08d5017554378c54c8bc6f920419672b9cb01fdf18bcb1b03e642facffbf951297418b6270f9d4c911010ad506c3d4c1d93624d974b6ad951166828f950578d16c647433411ed61ddeb5a0a0f1764c77313c3779946cbd5f5dc21706df6277c78f5aef398e479151fe608c2fecf0479885e60042a25c0c2d050edb1f9f693d6b43581db4705c7e912fb2ea1e774e3cf21a0c3f83c407d74cc9a113188f1aa55e7e5a2d3e3d0e213f80e404b4f9a1f32a438137a9dc66b7f17d751e7760361e9c7fde216fa2f3556758242a2be8fca01abda9cd97a2cda0e38544efb6636b68234a7c05398413413f667c1446f7a9d136a4ebcd6185f35ca52ca3dc1e98ed6dda39005e7847326b6951faf5e3af609087d929815add34986c817b6bb8f824a8f29bc24d78b44ec03745d22f456cf47d9298c12f35d4ac0fd39186521b1137e1cdb5a5e5d0cd2d827ac81c19e7548aac9980da488462c3e1ce881c453fea95434071d519c026a6842657271700d5a07a0431825b6339738d4f907292201df5a7007fedde4445f8771b2fb2677cdab32f9fc7d0e6b9ecd3834fd414d5ee48add7192e68d91bdd0b1f992a2bb2508d1e69d506c9a92ac1f9e6eb26f4cbf05789786f468b2da76bd64937a0c7652064cce29a2f229c728c392ba0517c313c0d71d116d85df4a6d4d9b5c75e3174245090b09887ba718d071aa8ceb87888c94605a7c80ddf4190acc643a9f96754aac7b8123ecee2352f83492a9b738528316174a5ca34f577aa5f155372fa3202e49e5c111b8adb7c49bfd8e74e50c173d6979cfd856cfc1211d746034c3f390e1a27027d6477be9772cf4f8029387eef7f97b314a56e824f9ccbff28ba8af7be494941c0e00081a4328ce866b28a86d416c06ac30145cce4cc6d1e4cae509b4798e3f2c78046a4c7430ae38d9881b241fc7243849bf43c0427c8c2f151f584c5c7549525184565d27d789a6a6d6b312291c304d5e93ff6033762634be55bb314b8e09f220e5546cdd00377f35e368bd6f489a23825f23cd71ccf0ada4b534b8aa87a3a73fb2307d1c8aebc167f687149f34ef5ef2ee2b4e8ae8b284a39a2bd2d827b393ffb5945892e0764c7b12f07eec4e0d644821ce041d812d8b082bf9db1113e018f5363f29d1a67f008e8b7e9f8664ff68f5b978004f05d01084dca75086b7078c392713a6d980523fb3ff00b57970794dcb674c636eea52aa8d2242e628ee0383afddeefed2cc1645baa25e6b0a67df2445ca24e0a58715d2fbc94a9cc310b3e0d5bd26502c9786ce1de34a2a668d0d5b07d363c7584708d6e55a4ab9996872eed15663cc076ebba81897e4ab4b06ca7d596ed5f260913fcb0c194724208423d09177b9b593caaefa2dc57edd332ae97afa1ec339b13c88a931310adf8b1a7a9420ff6d8e6c3e0524aae603929d356514392540c13bed3be4540ab2ac1d711a8dae5f89bdfaa987203712e7ebd851be3a8768676ecf4f450ac688884285391c37063a4b952de013e7911fef0c9be830f2867a168a971f42db7672a2c0e58f6f09f1706091d0c1af5cfb0c6433e5e712830c171c2db1a6e58dde49754a61f4f19d39b98a9e5ba27dfc62c675c5fc40385f27ff3469a3c4224d755dc28cb4f028f1dcf381e87ca21689b707e087053de08c36a57e486da1f8ba9111732bcdd6b5e4a283bcdaf44d400b6a6d4942b2159abc44ba7b5d99c6604750c812c940df22d87e6288191b2e18abf4b4878990263054e4ee45067b64ae79df377af86c7257617f646b386a607561314d5529a7b053c35463c0af0bf86e1a4402335f08e688b7998f836799c494e2ba081cdcc94dbf7921adc0bc3420de4575f2443279e243de1fdcd5456f06ce7bed2f45f88b1f5c9e962a08bc621d8eb89dc6d79a943e8f70a5b7f8331482e1aad2fd8742f5d5ed62f71cbfea79834553f727de3d5a997a1239a070ae0e27f2619fcfc761996f593abf08bea720892e85275ba286d9dd582e956728051022c4b1d8f3fd49f0b4581eaa55f4d1ee4cb39b665e58673f0dc91ab34a4b57c8c0e0abba92c6ec9b4623804befe72ac547f8ce2eac537130b6994a9933b84d2aaf0c1beaae331d301f0468a2a2422ea1300013753e504a9a430706110b3f729e0233cc5c2a61e0857acd5f34e32cc37f73375bbb7c06ef92199e241ab730c81ec7a086b228ae7e65d264e1256e82e3f9d890a0fc022c3c60ed1d50f1da635387e31b0c0bf4d0775d635c3efde2168781f8b000acf70ed11306b47c9e03b874fb6741389ea05874cff953c995e5793320506735b485aaa4b30f629cc280daba9401a37c65de12b68e19d3017ba00f3ffe5332b9e928124c9ab5a760750a9eeb883371bfa516683d6e09d0dfa9acf1bf2552fe3a237bb3e2d960bd498f0ae6c4929ea9afa7ca923e4e5290d631cf78fdfead4dbef42fdd28e18de45d39d58e42cd43435a95a37250b26915c049cd9c5b114cfd8179ad3be80e5910e15b248bbed1b7bab81b56c656887acf3dac8f53ad1396bcc5ddcf562eb73a5e70e2f1bd2111c07ea1c804beb9052cd6e2df9515ca8e7f0ef14ec5f2ee5d88aae243ae889d1211848454838cbc639141013f36e0dfb8365cfb4385ec3ceab4c5dca2681a80e7f759e14d0221b68166ca08e05fb3c46c6982853bd100615b57b0ec58194d12f8b432223dd16173f17289844a823d0edb7346196faa108c98d1f8f3de51e57f46cccf1fe92e209d6cf7543d8a7dc7000816eb0e857cb0fd7cfe7a7596a1df054106fcd038abbea8b8c6c2b4664ff56047d8f1a1d68508ecd7c864ca77a27d8625f10fed8dbc9176973bc7a365f87dafccfbc96ab637294b2e0a98ab2871d3ac7ed6fed57476f62b9c6678ba364ff67a0b8453201674bd066452948288f8e71c6df3427758a4bcf275dbbaa960c91c8368098fad4d1b76ee6f9e766f1697e23f7a9b9af8a082e2230d62f04d8586dd29ce1325f9c3a5cd26ff6a97530d7ea87ee1ec02b826a56671b6b813fabfcf2c9af31e52155d54f2b3cf1f8be5c01127d28b0def34aee9506534bf39d65bdbfc46eb88542e25690ec2600fc37a5eaed6c4f1f77f520d3f226ef0f510f6d5f4d86777f6cd7b17f70034a42073f34143f2c2674a4f8aafdef180f6cfc7105a0fd5ff56a93bb155e24f71b81b63853540098961eb55577fe93c9606abcae06a87e17bda57abf8169f092c2c3e9c3cad03e305e33dbb6e811f759855feea41571a30f8ff7c1122512859cf8b5aaf08c51d148918b433faeba9b20b58f529c65100f5e5cabbb237a635cc9e7f5938f47fef0ce9c6ab642450c06c2858845fc03cb2f3f48c771c13a6db6af17d1e434c721045aee089cb404f89fc56a1cfa843e2602cbc159eb2e0877cd41eac1528f6eb7df03e5b72bf1a1a1b0df7e0a5026a7ad5dbb6519afe3ef9a1d7aeeedfa17d85e3790f586f0da9b1b1267253a11103b13f8d8ffa4ef2c3d8fa7c0c22b5d1b25ef074bf5fd1d81b7d38ad819a6f285452f5085e2ce9d08a5caf404cd8a7bc2029a721cdb488cb7982b75540e4429fae08734fe5fca805c4019076d568fe9ea83150072848a9779427373d7523817c27ba7404eb1cce4c41eb321cf197cf7380e2372072fefb4d49cd0fd111964e0f1657ba7e5c610a550a80f3968ad4bdbfa168cf861ad7d9a940f338ac64d947fd9eecfc9ed8e58f161a5c7a0c9a33f02f8731105f71cb8a4d918a9c070757f5d97a9c698b503334a9e2b50d9060a83652313bca7d9aaf57150a85446e49fa67bf89c007005947ea1f0d36900a7c95571518025d145551ec939fc0dcc4e510de2d2704620c47227d69d04f7fd826dcebf51e825abe6e7bfd0618683f6c32c436af91828b8a68deb2e6366f6fec7da12654e8657ac7946c1c1e7e74ac15740c127d17fb26ee0d5509b7f0e2907ab550a8bdfd5cde3841dc7cfa130424fe66ca78f4739d09b87f1f16248e8c276be2959774be6bac376b366b59fb20dcb312c15edfce8fb837761c3aaca32b1c818a2cfad444576144e048b761d5f4bd8a9c359f9d2a284a4b607182d1c0e0fc64d8a37684aaa2d0028116a1fe9839d11261991d3287a162095eeeddac9eb9e46c936107fd9e98b0f2a304672e958b6719e856d1fca43130b04756618ebc3f52e2eea3325b3e78cdf1c704ac0f6fcea3b96300f51752cbf552a1cd6e00397b2bcd4104542b9f384911edd1edbeb95a4bd579f5852ed77fae16d30d2ddd8e943d5d1848ed2c9b0e73c9e5da9dcd00527c67cc23a391cfbd4130182e6b5a17204b5a0353ae8f02fb7435467d62b268a10902cd5761ab6f3de96d328fcf3fd30d8030211c9c2b536412c91850f731a2c73aa80651beebc7b3730b635506f5b6ab60298bb97e7f0876b185ebfee7b32f5b815d66cccba8dcb8a74641884d7c63666b92f29bd348cf7a3072940ae817f8f71d7187591f9d3e1fa6bc1e5062e3e9ca55c3a9310c9d15bec1d508593c2679ae8af503e2701d5558160d54ad5a72af8921f2eea615726573b84b8721ffa182f4ecb6bb35a0d1483b17a6d7561bc66be9da3eed54307d49622a671d2b1aff8ad582322537ddcec708c39944227ad073c7eaac7eaf47b76aa2fc48c62b223763d2038657800776eda20ecc11cff9ab03915df8fc2338bc932cd2978105c10a1bf4e5316be280d5936508bc57c3e63301e87a2fdfb94c7f2dc9fb58e93096e7a8127ab3f557cb2daedfee7aa7ca372ea011b4b7492ca6a651417a07778073856963c1d5359d37967b2f64bedbf4b5d796bfd536ad0e8ac904baf0e823bd8360808764d25c6a9047e5d833b092aa2e77a3206200071ecedd08eb5711f289aa5e03c57d68850811db2dcdf637f14206e052962f1522fdb6b574b69df6550b0e2f666c13be278d443f9bafbf19bc0af2c0827e58c55932ba4b73183d98bc7855b3003dfc3cd70a86b81eac6b8955fad8b9b86f4215942c357b6678fb669eab51105bdbe0d20350acebe99b52449e28b9df77b5b4f12a8adc46eeba94d5d1bddf6979a74bc0f9f23b8a88887e7364ef05fa8546c22635bf0e200ddd76f68d4481a08d4dbdf32465e724fedbe0cf65160e247ce56f93fbe284663b21a8d454449738801d7880dbedbe756492719335e2da8ba5b5bec529e32d3991f064ab3c3ea71e799fc2a38e0ebaf907ee282378f2fd566d01b786eef896e3abf7a14b0189dcd03eddc86952c50a95917bf6bb67f87f610964ef092103871a51df52e136d9f6353bd3f396e2eea6936d1bfdde7fa2877295d2ff0559fbd513bacc225423a521ebb79ff0e01f79cff86a1ad45be91e5b3e7d5500a56de4a89b76e08273e392215267436445f8054a8ad47d864f14f81e00997dcdce7918c2115fa1e6d9659eca3cd4646c7027cb5c248106606b2cec844a5354e538142a6f84edb3ef9c9f7fef90d00879e75e128ed629d076bb18", 0x1000}, {&(0x7f0000001280)="6777fa3ca36c1c52c6fb24a6fa884e71f6806cc713025871094aedbaa44ef09bcadd1675a413a951a2372af398f7edf67f8ae729a8aab8c19e9aadbb6e2271a906f4cea25cda8ee8c3024711530ed9a568e7b4adddba2544c29a72491538b87de2f2951295f86c5bd70c836e3bdb7de9c4cb3924a7589a0349b69e2dd6ecb18cf5110aa1a56cb8aa4e5d04209b020208f9faa45b70e942bbecee7cb4fe521cc40b1aa0f8ffed57d7e4c12cc7e4937d5f04fbbd86ad7fbfd6686c1874b6e97273e997588743aebabf417173db5b2227856dad3bf45cbd585ec11fbba3e4585e4cba2d29c5a2e116d03dbe9e1de3819f84874f90bc", 0xf4}, {&(0x7f0000001380)="8e31593c45977838a7ff121e0d13938ef54e25361467691970d0484afd8c505805ed1840c3ceb468c626ab729752ef48472c9d20bf7883b76942159e1067e09e32da21ab8fe39df2733c42b11ce9b6cbc59e15913a00f0c3fef6c4e7f30744ff8dc4a3d1ad286133568bd87bb08f622161656b6ec78dad71389a5b7370ff546ed1ee499fb9501666229e82906307d4922cf3ad61da6b7d0a2b2cb8b598b05f66bf9976807d1398597009b180935407cdeeb38e397d3edb225ba2d483f2be0983e853da7c93bf64f486c3f305df8a359911b5ba4e4f4dac1fae47dd2d3b75e94128da", 0xe2}, {&(0x7f0000001480)="7ee295bc576cb294f032d1122ae373df48054316ecab0d483f71da81ea121a883b3fc01dda88f4fea0eb36596fb3cd1fd7b8cba0eb635816135e1e6272d4754a0d856ab2ee9d16c3164f62b8a7d3f2a56199f03c2a921b9962ae14ca4d8d094cabfcce0abd274db33ad6648be5cabd4b0ed32dc27bb6290f2f778df49514d0a94315e52b76f1008b5f2496c588e84acb3577d329d6f7a08eb3e7d42aab532613157d483b16b1d11884a9a61009193d38b03e0ce6ac86ac390dc09631c6a068d0fddc26111ffa5a11723e4729c2e088d48bed3ec158be5e5e4d7a4b8f8925d74fb5f658054e37e619eb2b655af4d749b86e3c4d", 0xf3}, {&(0x7f0000001580)="17ac382439e2c754e8243bfe3915bf517ed2a72e948f86df60ebf581eb8eb7fcc8237e33edbd00a698723165ca4f308ca30d359649be4316d9ff1cb89ec418980fa27d60c29fc6872783094a2cb43844eb9bc4ce1d60d4e6b0d06d340ad85f299273816ead23d76277d6fec0e5ab695358be7b797e5289ecaaecce4a80555a4ee4904e1d6596e5211055c4477a2cd599c43ca3be6cdc19cc2937135c86b573c1ef8ddbb82a83dec8ac19809e3efad5498ef27efc2f00c8cb129e96cde78a50b4c138f822db8031b4a820d6a3b149285da395efd885344657db69c0c0db1dd507ed625672cb0ccc938db136bf43c99ad36fedc16fdbb1fbf8ed65fc272f", 0xfd}, {&(0x7f0000001680)="a7e56d59fc54a3949099ced55feb3ce3601f81cb512c8f292e53a1462965cd74e92e320eed2d06065c73844ef1f440378f1c2a4b21a14c3a23d64d54c16c23b37f6217b97f9d99c0a99863113f61b71d789ad81671775a15d7753029f87391657f618406f6f8a023d92eb302f1614412be82a55281d8074a42bfdb41d6d156779c983056fb6864a374e62c8e675bde4f4c847c8476d44ab241e70d8fe766902eafd79bc120deb18f1736bc7e0f74538a8505dc3e70d157d06e0db270db698df0e3f1", 0xc2}], 0x8}, 0x1) sendmsg$kcm(r0, &(0x7f0000000180)={0x0, 0x8782559fc2aff2e2, &(0x7f0000000080)=[{&(0x7f0000000040)="e03f03002800050ad25a802e8c63940d0424fc600c0018400bac0f000aac0f0037153e370a00038004000008d1bd", 0x33fe0}], 0x1}, 0x0) socket$kcm(0x10, 0x2, 0x10) (async) socket$inet_tcp(0x2, 0x1, 0x0) (async) setsockopt$ARPT_SO_SET_REPLACE(r1, 0x0, 0x60, &(0x7f0000000440)={'filter\x00', 0x11, 0x4, 0x3f0, 0x0, 0x0, 0x200, 0x308, 0x308, 0x308, 0x7fffffe, 0x0, {[{{@arp={@remote, @broadcast, 0x0, 0x0, 0x0, 0x0, {@mac=@link_local={0x2}}, {@mac}, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 'bridge0\x00', 'erspan0\x00'}, 0xc0, 0x100}, @unspec=@RATEEST={0x40, 'RATEEST\x00', 0x0, {'syz1\x00'}}}, {{@uncond, 0xc0, 0x100}, @unspec=@RATEEST={0x40, 'RATEEST\x00', 0x0, {'syz0\x00'}}}, {{@arp={@multicast1, @initdev={0xac, 0x1e, 0x0, 0x0}, 0x0, 0x0, 0x0, 0x0, {@mac=@link_local}, {@mac=@multicast}, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 'veth0_vlan\x00', 'ipvlan1\x00'}, 0xc0, 0x108}, @unspec=@IDLETIMER={0x48, 'IDLETIMER\x00', 0x0, {0x0, 'syz0\x00'}}}], {{'\x00', 0xc0, 0xe8}, {0x28, '\x00', 0x2}}}}, 0x440) (async) setsockopt(r1, 0x4, 0x80000000, &(0x7f0000001840)="eb", 0x1) (async) openat$dlm_control(0xffffffffffffff9c, &(0x7f0000000000), 0x2082, 0x0) (async) sendmsg$kcm(r2, &(0x7f0000001800)={&(0x7f00000000c0)=@caif=@dgm={0x25, 0x1, 0x16}, 0x80, &(0x7f0000001780)=[{&(0x7f00000001c0)="8ce378653a8fb568ba2ecfcf41c45aa607f76937ca12d27ba4cbf67657d4b1d3cb67e224a656ff41fe8bbb122457880008b64a4acab666a6205dbe292cf4df98ce9da170a1ace0dfacb55e28ef6abc3f30e3510cb33c5677077213551f8e38da46f55b57cd6ef54383cdc0ad0294f20ac5967e060e02ca2af4956209f9b60259d68e526137595a3cb15bff4bdfd7639edaa723b05fec87541004c211", 0x9c}, {&(0x7f0000000140)="cafabe3b8dbdd32fab354c4f59720bf6dd4103f82c2f86a4d9f8f49a3dcf3fa93ed98bd122768f7d954e9cec1078c7a030073ffe545ae3e742193fe08b", 0x3d}, {&(0x7f0000000280)="7e84403461b1f02bd6891cb23b6525c9d9e9c385326c132f512f43a3698ec2c4edcdc494717b1dd62013d649f5f3fb85b5efd83bce8c9f763e7eba29fc66c1c379c7fc1f9e27fbf49e011ed6cac8b82a2be411c86284afa141d01d198d476cd905ae94d26f8167aac3f349a2d552064700577cd96958d89020cb50f1e0de6d73a65d34b40504d543ab0ceb91f24c0e4a924c10b01f8201a332d3b7dd53529bd1c4e28f4482eda8db08778d553fc72884fa9fc4714987e197b91b752300917da6340e29161574c5ba777b81be14572ba08e18cfe8262a6bdb6c355b06e8a08d5017554378c54c8bc6f920419672b9cb01fdf18bcb1b03e642facffbf951297418b6270f9d4c911010ad506c3d4c1d93624d974b6ad951166828f950578d16c647433411ed61ddeb5a0a0f1764c77313c3779946cbd5f5dc21706df6277c78f5aef398e479151fe608c2fecf0479885e60042a25c0c2d050edb1f9f693d6b43581db4705c7e912fb2ea1e774e3cf21a0c3f83c407d74cc9a113188f1aa55e7e5a2d3e3d0e213f80e404b4f9a1f32a438137a9dc66b7f17d751e7760361e9c7fde216fa2f3556758242a2be8fca01abda9cd97a2cda0e38544efb6636b68234a7c05398413413f667c1446f7a9d136a4ebcd6185f35ca52ca3dc1e98ed6dda39005e7847326b6951faf5e3af609087d929815add34986c817b6bb8f824a8f29bc24d78b44ec03745d22f456cf47d9298c12f35d4ac0fd39186521b1137e1cdb5a5e5d0cd2d827ac81c19e7548aac9980da488462c3e1ce881c453fea95434071d519c026a6842657271700d5a07a0431825b6339738d4f907292201df5a7007fedde4445f8771b2fb2677cdab32f9fc7d0e6b9ecd3834fd414d5ee48add7192e68d91bdd0b1f992a2bb2508d1e69d506c9a92ac1f9e6eb26f4cbf05789786f468b2da76bd64937a0c7652064cce29a2f229c728c392ba0517c313c0d71d116d85df4a6d4d9b5c75e3174245090b09887ba718d071aa8ceb87888c94605a7c80ddf4190acc643a9f96754aac7b8123ecee2352f83492a9b738528316174a5ca34f577aa5f155372fa3202e49e5c111b8adb7c49bfd8e74e50c173d6979cfd856cfc1211d746034c3f390e1a27027d6477be9772cf4f8029387eef7f97b314a56e824f9ccbff28ba8af7be494941c0e00081a4328ce866b28a86d416c06ac30145cce4cc6d1e4cae509b4798e3f2c78046a4c7430ae38d9881b241fc7243849bf43c0427c8c2f151f584c5c7549525184565d27d789a6a6d6b312291c304d5e93ff6033762634be55bb314b8e09f220e5546cdd00377f35e368bd6f489a23825f23cd71ccf0ada4b534b8aa87a3a73fb2307d1c8aebc167f687149f34ef5ef2ee2b4e8ae8b284a39a2bd2d827b393ffb5945892e0764c7b12f07eec4e0d644821ce041d812d8b082bf9db1113e018f5363f29d1a67f008e8b7e9f8664ff68f5b978004f05d01084dca75086b7078c392713a6d980523fb3ff00b57970794dcb674c636eea52aa8d2242e628ee0383afddeefed2cc1645baa25e6b0a67df2445ca24e0a58715d2fbc94a9cc310b3e0d5bd26502c9786ce1de34a2a668d0d5b07d363c7584708d6e55a4ab9996872eed15663cc076ebba81897e4ab4b06ca7d596ed5f260913fcb0c194724208423d09177b9b593caaefa2dc57edd332ae97afa1ec339b13c88a931310adf8b1a7a9420ff6d8e6c3e0524aae603929d356514392540c13bed3be4540ab2ac1d711a8dae5f89bdfaa987203712e7ebd851be3a8768676ecf4f450ac688884285391c37063a4b952de013e7911fef0c9be830f2867a168a971f42db7672a2c0e58f6f09f1706091d0c1af5cfb0c6433e5e712830c171c2db1a6e58dde49754a61f4f19d39b98a9e5ba27dfc62c675c5fc40385f27ff3469a3c4224d755dc28cb4f028f1dcf381e87ca21689b707e087053de08c36a57e486da1f8ba9111732bcdd6b5e4a283bcdaf44d400b6a6d4942b2159abc44ba7b5d99c6604750c812c940df22d87e6288191b2e18abf4b4878990263054e4ee45067b64ae79df377af86c7257617f646b386a607561314d5529a7b053c35463c0af0bf86e1a4402335f08e688b7998f836799c494e2ba081cdcc94dbf7921adc0bc3420de4575f2443279e243de1fdcd5456f06ce7bed2f45f88b1f5c9e962a08bc621d8eb89dc6d79a943e8f70a5b7f8331482e1aad2fd8742f5d5ed62f71cbfea79834553f727de3d5a997a1239a070ae0e27f2619fcfc761996f593abf08bea720892e85275ba286d9dd582e956728051022c4b1d8f3fd49f0b4581eaa55f4d1ee4cb39b665e58673f0dc91ab34a4b57c8c0e0abba92c6ec9b4623804befe72ac547f8ce2eac537130b6994a9933b84d2aaf0c1beaae331d301f0468a2a2422ea1300013753e504a9a430706110b3f729e0233cc5c2a61e0857acd5f34e32cc37f73375bbb7c06ef92199e241ab730c81ec7a086b228ae7e65d264e1256e82e3f9d890a0fc022c3c60ed1d50f1da635387e31b0c0bf4d0775d635c3efde2168781f8b000acf70ed11306b47c9e03b874fb6741389ea05874cff953c995e5793320506735b485aaa4b30f629cc280daba9401a37c65de12b68e19d3017ba00f3ffe5332b9e928124c9ab5a760750a9eeb883371bfa516683d6e09d0dfa9acf1bf2552fe3a237bb3e2d960bd498f0ae6c4929ea9afa7ca923e4e5290d631cf78fdfead4dbef42fdd28e18de45d39d58e42cd43435a95a37250b26915c049cd9c5b114cfd8179ad3be80e5910e15b248bbed1b7bab81b56c656887acf3dac8f53ad1396bcc5ddcf562eb73a5e70e2f1bd2111c07ea1c804beb9052cd6e2df9515ca8e7f0ef14ec5f2ee5d88aae243ae889d1211848454838cbc639141013f36e0dfb8365cfb4385ec3ceab4c5dca2681a80e7f759e14d0221b68166ca08e05fb3c46c6982853bd100615b57b0ec58194d12f8b432223dd16173f17289844a823d0edb7346196faa108c98d1f8f3de51e57f46cccf1fe92e209d6cf7543d8a7dc7000816eb0e857cb0fd7cfe7a7596a1df054106fcd038abbea8b8c6c2b4664ff56047d8f1a1d68508ecd7c864ca77a27d8625f10fed8dbc9176973bc7a365f87dafccfbc96ab637294b2e0a98ab2871d3ac7ed6fed57476f62b9c6678ba364ff67a0b8453201674bd066452948288f8e71c6df3427758a4bcf275dbbaa960c91c8368098fad4d1b76ee6f9e766f1697e23f7a9b9af8a082e2230d62f04d8586dd29ce1325f9c3a5cd26ff6a97530d7ea87ee1ec02b826a56671b6b813fabfcf2c9af31e52155d54f2b3cf1f8be5c01127d28b0def34aee9506534bf39d65bdbfc46eb88542e25690ec2600fc37a5eaed6c4f1f77f520d3f226ef0f510f6d5f4d86777f6cd7b17f70034a42073f34143f2c2674a4f8aafdef180f6cfc7105a0fd5ff56a93bb155e24f71b81b63853540098961eb55577fe93c9606abcae06a87e17bda57abf8169f092c2c3e9c3cad03e305e33dbb6e811f759855feea41571a30f8ff7c1122512859cf8b5aaf08c51d148918b433faeba9b20b58f529c65100f5e5cabbb237a635cc9e7f5938f47fef0ce9c6ab642450c06c2858845fc03cb2f3f48c771c13a6db6af17d1e434c721045aee089cb404f89fc56a1cfa843e2602cbc159eb2e0877cd41eac1528f6eb7df03e5b72bf1a1a1b0df7e0a5026a7ad5dbb6519afe3ef9a1d7aeeedfa17d85e3790f586f0da9b1b1267253a11103b13f8d8ffa4ef2c3d8fa7c0c22b5d1b25ef074bf5fd1d81b7d38ad819a6f285452f5085e2ce9d08a5caf404cd8a7bc2029a721cdb488cb7982b75540e4429fae08734fe5fca805c4019076d568fe9ea83150072848a9779427373d7523817c27ba7404eb1cce4c41eb321cf197cf7380e2372072fefb4d49cd0fd111964e0f1657ba7e5c610a550a80f3968ad4bdbfa168cf861ad7d9a940f338ac64d947fd9eecfc9ed8e58f161a5c7a0c9a33f02f8731105f71cb8a4d918a9c070757f5d97a9c698b503334a9e2b50d9060a83652313bca7d9aaf57150a85446e49fa67bf89c007005947ea1f0d36900a7c95571518025d145551ec939fc0dcc4e510de2d2704620c47227d69d04f7fd826dcebf51e825abe6e7bfd0618683f6c32c436af91828b8a68deb2e6366f6fec7da12654e8657ac7946c1c1e7e74ac15740c127d17fb26ee0d5509b7f0e2907ab550a8bdfd5cde3841dc7cfa130424fe66ca78f4739d09b87f1f16248e8c276be2959774be6bac376b366b59fb20dcb312c15edfce8fb837761c3aaca32b1c818a2cfad444576144e048b761d5f4bd8a9c359f9d2a284a4b607182d1c0e0fc64d8a37684aaa2d0028116a1fe9839d11261991d3287a162095eeeddac9eb9e46c936107fd9e98b0f2a304672e958b6719e856d1fca43130b04756618ebc3f52e2eea3325b3e78cdf1c704ac0f6fcea3b96300f51752cbf552a1cd6e00397b2bcd4104542b9f384911edd1edbeb95a4bd579f5852ed77fae16d30d2ddd8e943d5d1848ed2c9b0e73c9e5da9dcd00527c67cc23a391cfbd4130182e6b5a17204b5a0353ae8f02fb7435467d62b268a10902cd5761ab6f3de96d328fcf3fd30d8030211c9c2b536412c91850f731a2c73aa80651beebc7b3730b635506f5b6ab60298bb97e7f0876b185ebfee7b32f5b815d66cccba8dcb8a74641884d7c63666b92f29bd348cf7a3072940ae817f8f71d7187591f9d3e1fa6bc1e5062e3e9ca55c3a9310c9d15bec1d508593c2679ae8af503e2701d5558160d54ad5a72af8921f2eea615726573b84b8721ffa182f4ecb6bb35a0d1483b17a6d7561bc66be9da3eed54307d49622a671d2b1aff8ad582322537ddcec708c39944227ad073c7eaac7eaf47b76aa2fc48c62b223763d2038657800776eda20ecc11cff9ab03915df8fc2338bc932cd2978105c10a1bf4e5316be280d5936508bc57c3e63301e87a2fdfb94c7f2dc9fb58e93096e7a8127ab3f557cb2daedfee7aa7ca372ea011b4b7492ca6a651417a07778073856963c1d5359d37967b2f64bedbf4b5d796bfd536ad0e8ac904baf0e823bd8360808764d25c6a9047e5d833b092aa2e77a3206200071ecedd08eb5711f289aa5e03c57d68850811db2dcdf637f14206e052962f1522fdb6b574b69df6550b0e2f666c13be278d443f9bafbf19bc0af2c0827e58c55932ba4b73183d98bc7855b3003dfc3cd70a86b81eac6b8955fad8b9b86f4215942c357b6678fb669eab51105bdbe0d20350acebe99b52449e28b9df77b5b4f12a8adc46eeba94d5d1bddf6979a74bc0f9f23b8a88887e7364ef05fa8546c22635bf0e200ddd76f68d4481a08d4dbdf32465e724fedbe0cf65160e247ce56f93fbe284663b21a8d454449738801d7880dbedbe756492719335e2da8ba5b5bec529e32d3991f064ab3c3ea71e799fc2a38e0ebaf907ee282378f2fd566d01b786eef896e3abf7a14b0189dcd03eddc86952c50a95917bf6bb67f87f610964ef092103871a51df52e136d9f6353bd3f396e2eea6936d1bfdde7fa2877295d2ff0559fbd513bacc225423a521ebb79ff0e01f79cff86a1ad45be91e5b3e7d5500a56de4a89b76e08273e392215267436445f8054a8ad47d864f14f81e00997dcdce7918c2115fa1e6d9659eca3cd4646c7027cb5c248106606b2cec844a5354e538142a6f84edb3ef9c9f7fef90d00879e75e128ed629d076bb18", 0x1000}, {&(0x7f0000001280)="6777fa3ca36c1c52c6fb24a6fa884e71f6806cc713025871094aedbaa44ef09bcadd1675a413a951a2372af398f7edf67f8ae729a8aab8c19e9aadbb6e2271a906f4cea25cda8ee8c3024711530ed9a568e7b4adddba2544c29a72491538b87de2f2951295f86c5bd70c836e3bdb7de9c4cb3924a7589a0349b69e2dd6ecb18cf5110aa1a56cb8aa4e5d04209b020208f9faa45b70e942bbecee7cb4fe521cc40b1aa0f8ffed57d7e4c12cc7e4937d5f04fbbd86ad7fbfd6686c1874b6e97273e997588743aebabf417173db5b2227856dad3bf45cbd585ec11fbba3e4585e4cba2d29c5a2e116d03dbe9e1de3819f84874f90bc", 0xf4}, {&(0x7f0000001380)="8e31593c45977838a7ff121e0d13938ef54e25361467691970d0484afd8c505805ed1840c3ceb468c626ab729752ef48472c9d20bf7883b76942159e1067e09e32da21ab8fe39df2733c42b11ce9b6cbc59e15913a00f0c3fef6c4e7f30744ff8dc4a3d1ad286133568bd87bb08f622161656b6ec78dad71389a5b7370ff546ed1ee499fb9501666229e82906307d4922cf3ad61da6b7d0a2b2cb8b598b05f66bf9976807d1398597009b180935407cdeeb38e397d3edb225ba2d483f2be0983e853da7c93bf64f486c3f305df8a359911b5ba4e4f4dac1fae47dd2d3b75e94128da", 0xe2}, {&(0x7f0000001480)="7ee295bc576cb294f032d1122ae373df48054316ecab0d483f71da81ea121a883b3fc01dda88f4fea0eb36596fb3cd1fd7b8cba0eb635816135e1e6272d4754a0d856ab2ee9d16c3164f62b8a7d3f2a56199f03c2a921b9962ae14ca4d8d094cabfcce0abd274db33ad6648be5cabd4b0ed32dc27bb6290f2f778df49514d0a94315e52b76f1008b5f2496c588e84acb3577d329d6f7a08eb3e7d42aab532613157d483b16b1d11884a9a61009193d38b03e0ce6ac86ac390dc09631c6a068d0fddc26111ffa5a11723e4729c2e088d48bed3ec158be5e5e4d7a4b8f8925d74fb5f658054e37e619eb2b655af4d749b86e3c4d", 0xf3}, {&(0x7f0000001580)="17ac382439e2c754e8243bfe3915bf517ed2a72e948f86df60ebf581eb8eb7fcc8237e33edbd00a698723165ca4f308ca30d359649be4316d9ff1cb89ec418980fa27d60c29fc6872783094a2cb43844eb9bc4ce1d60d4e6b0d06d340ad85f299273816ead23d76277d6fec0e5ab695358be7b797e5289ecaaecce4a80555a4ee4904e1d6596e5211055c4477a2cd599c43ca3be6cdc19cc2937135c86b573c1ef8ddbb82a83dec8ac19809e3efad5498ef27efc2f00c8cb129e96cde78a50b4c138f822db8031b4a820d6a3b149285da395efd885344657db69c0c0db1dd507ed625672cb0ccc938db136bf43c99ad36fedc16fdbb1fbf8ed65fc272f", 0xfd}, {&(0x7f0000001680)="a7e56d59fc54a3949099ced55feb3ce3601f81cb512c8f292e53a1462965cd74e92e320eed2d06065c73844ef1f440378f1c2a4b21a14c3a23d64d54c16c23b37f6217b97f9d99c0a99863113f61b71d789ad81671775a15d7753029f87391657f618406f6f8a023d92eb302f1614412be82a55281d8074a42bfdb41d6d156779c983056fb6864a374e62c8e675bde4f4c847c8476d44ab241e70d8fe766902eafd79bc120deb18f1736bc7e0f74538a8505dc3e70d157d06e0db270db698df0e3f1", 0xc2}], 0x8}, 0x1) (async) sendmsg$kcm(r0, &(0x7f0000000180)={0x0, 0x8782559fc2aff2e2, &(0x7f0000000080)=[{&(0x7f0000000040)="e03f03002800050ad25a802e8c63940d0424fc600c0018400bac0f000aac0f0037153e370a00038004000008d1bd", 0x33fe0}], 0x1}, 0x0) (async) 00:02:50 executing program 2: r0 = openat(0xffffffffffffff9c, &(0x7f0000000180)='./cgroup.cpu/cpuset.cpus\x00', 0x0, 0x0) open_by_handle_at(r0, &(0x7f0000000140)=@ceph_nfs_confh={0x10, 0x2, {0x3}}, 0x0) r1 = socket$nl_route(0x10, 0x3, 0x0) r2 = socket$netlink(0x10, 0x3, 0x0) r3 = socket$netlink(0x10, 0x3, 0x0) r4 = socket(0x10, 0x803, 0x0) sendmsg$IPSET_CMD_LIST(r4, &(0x7f00000005c0)={0x0, 0x0, &(0x7f0000000580)={0x0, 0x14}}, 0x0) getsockname$packet(r4, &(0x7f0000000380)={0x11, 0x0, 0x0, 0x1, 0x0, 0x6, @broadcast}, &(0x7f0000000200)=0x14) sendmsg$nl_route(r3, &(0x7f0000000040)={0x0, 0x0, &(0x7f0000000000)={&(0x7f00000008c0)=ANY=[@ANYBLOB="480000001000050700"/20, @ANYRES32=r5, @ANYBLOB="0000000000000000280012000c00010076657468"], 0x48}}, 0x0) sendmsg$nl_route_sched(r2, &(0x7f0000000040)={0x0, 0x0, &(0x7f0000000100)={&(0x7f0000000080)=@newqdisc={0x30, 0x24, 0xf1d, 0x0, 0x0, {0x0, 0x0, 0x0, r5, {}, {0xfff1, 0xffff}}, [@qdisc_kind_options=@q_clsact={0xb}]}, 0x30}, 0x1, 0x0, 0x0, 0x400c010}, 0x0) sendmsg$nl_route_sched(r1, &(0x7f0000000280)={0x0, 0x0, &(0x7f0000000240)={&(0x7f00000003c0)=@delchain={0x24, 0x29, 0xd3d, 0x0, 0x0, {0x0, 0x0, 0x0, r5, {0xfff2, 0xffff}}}, 0x24}}, 0x0) ioctl$sock_ipv4_tunnel_SIOCCHGTUNNEL(r0, 0x89f3, &(0x7f0000000000)={'gre0\x00', &(0x7f00000000c0)={'sit0\x00', r5, 0x8000, 0x1, 0x955, 0x9, {{0x19, 0x4, 0x0, 0x2d, 0x64, 0x68, 0x0, 0x3f, 0x0, 0x0, @loopback, @initdev={0xac, 0x1e, 0x1, 0x0}, {[@ra={0x94, 0x4}, @timestamp={0x44, 0x24, 0xc7, 0x0, 0xc, [0x7ff, 0xff, 0x1, 0xffff7bd6, 0x1ff, 0x10000, 0x40, 0xfffffffa]}, @lsrr={0x83, 0x13, 0x44, [@dev={0xac, 0x14, 0x14, 0x43}, @broadcast, @multicast2, @loopback]}, @ra={0x94, 0x4, 0x1}, @lsrr={0x83, 0xf, 0xbb, [@local, @remote, @initdev={0xac, 0x1e, 0x0, 0x0}]}]}}}}}) r6 = socket$nl_netfilter(0x10, 0x3, 0xc) sendmsg$IPCTNL_MSG_CT_GET_CTRZERO(r6, &(0x7f0000000540)={0x0, 0x0, &(0x7f0000000500)={&(0x7f0000000040)={0x50, 0x3, 0x1, 0x201, 0x0, 0x0, {0xa}, [@CTA_TUPLE_REPLY={0x30, 0x2, 0x0, 0x1, [@CTA_TUPLE_IP={0x2c, 0x1, 0x0, 0x1, @ipv6={{0x14, 0x3, @local}, {0x14, 0x4, @private0}}}]}, @CTA_FILTER={0xc, 0x19, 0x0, 0x1, [@CTA_FILTER_REPLY_FLAGS={0x8, 0x2, 0x589}]}]}, 0x50}}, 0x0) 00:02:50 executing program 5: r0 = syz_open_dev$tty1(0xc, 0x4, 0x1) ioctl$KDFONTOP_SET(r0, 0x4b72, &(0x7f0000000400)={0x0, 0x0, 0xf, 0x8, 0x0, &(0x7f0000000000)="fb256614fe30d947a3185353e7685a2d315e459d080f35da9e895870ca2a1c42df5f8fe8fc428cf6accb12becae44f0318f92f0e59a50691be2706ac1e995a2668d18d37e6189580ad124435cb34656b214e0afbea359a42618963ffb3ecbcebc1622acf5aecfbc3a7d92b57bed385682eee0a5cf67ff614bb067242a3e21c51467cd28c134283f30ebda61f2d5c96b6ffaddf146f1540fc72807633770b28e26081dc94888e2e9039497785fee17063c0bffbce918e5529de9826ee3e441c39b2561f8fa58bc798c9b628c2f3695f593758a30c6b9b888c7282110b30a45c61773b5464bae32d85f28696ec2997d9647b69933b378855f8713aa32c8c35e654c1b2c89afb5a52f5c1d828351efbba20f6f8debff7e4856b832ef53a084ca4d3b0b89bf9bb248844bf89365ed1b9c9ae706bcf3ed5184be528368b75a6fe811303b4015d4be5b9331d0f1326d464b9fb40e0e66f0836ce10a06060ed9ec0f9b0dfb2f04df523175068b32b44c120e476f65b7f2e3efede85d842504d6d185ee1d6befd3ee1ed8c0c582534fe22e14a7098f4631969ffe1d1792852450a5494304d294f0d134d04a1c81a81e05900054fbf7688031d3eea1d0799147e48f02696e7e1e1d49e3fe328f458adf5a524168547ef5c338da371ba63482ee06115c8ab40fbddfdf1bf7505ead7acd5ad0f802c721bc796d18f97a16751db461f6b42f679bc385a7bb92a12a2900527a59310d4750898abae15346fa3aa5064f69ab96d97536e2ca4c2d667ac643824f02e3a3172b2a7721275d05a874cf5504993d9818a38ba7ab3d65b06b58d19e8096c33a49dcae4a6660193053a960f338c6353b521a7f4e4a0e27d7229f4b44755f9ee2b0f2550f95c2bfdb6dac023f56ede63c3d685437b71caf58b50eb011b31bd1c77db06cc56e3e87f4a345ed153977d07b342252c4932fe7f8fe3bd5e1e7a6fbfb67e58253a42ad90652b2b1a34cd16ecc7b1ea45e3f0190192f733f0d251cd585484f13ed75495539e2e679b50d8c2765c01197c6f7511977f7709675c3df7cbc7581f0f4d1232bce886600a24e1d5f1e0ae4fb04f250020d0eadfd7da2890ce02b5748ac9e9d1e208abc87e446bc2ccc22b95983d3775adfe26cc6c44cd56f3f0c53a60d9c82d4f48e9be7069c84d8fb26cc716625540fac3e11d391ee823f855ea1d74f20309cecc4158baa61ef0c0f5566665e000b9f755dd62cc2d2e47844aaeff66ebc8264d01a01e2ebd94f9cc9ee3aa1e0b1de56fbd3f101ef5af388cd32fa6c31994bcaf1dc1db60a719b2d01f2bdc63183c9c1b9d5a4884a6b7517847932995347f010e1ff044aafcdf73209f696ea51b5e59fef8185670dc54b28ce222311884e1ce9fd9d448805eebafae2f13812f1fc5e0a2abc46365bd3123330e516433e56e57e211a8ca4f72b0d12819"}) r1 = socket$inet6_sctp(0xa, 0x5, 0x84) setsockopt$sock_int(0xffffffffffffffff, 0x1, 0xa, &(0x7f0000000040)=0x8001, 0x4) ioctl$sock_inet_tcp_SIOCINQ(0xffffffffffffffff, 0x541b, &(0x7f0000000000)) r2 = accept$inet6(0xffffffffffffffff, &(0x7f0000000100)={0xa, 0x0, 0x0, @remote}, &(0x7f0000000140)=0x1c) (async) r3 = socket$inet_tcp(0x2, 0x1, 0x0) ioctl$sock_SIOCADDRT(r3, 0x890b, &(0x7f0000001840)={0x0, @l2tp={0x2, 0x0, @empty, 0x4}, @l2={0x1f, 0x6, @any, 0x992}, @nl=@unspec, 0x0, 0x0, 0x0, 0x0, 0x6102, &(0x7f0000000340)='veth0_macvtap\x00', 0x100000000000000, 0x1000400004, 0x1}) (async) ioctl$BTRFS_IOC_GET_SUBVOL_INFO(r3, 0x81f8943c, &(0x7f00000003c0)={0x0, ""/256, 0x0, 0x0, 0x0}) ioctl$BTRFS_IOC_SET_RECEIVED_SUBVOL(0xffffffffffffffff, 0xc0c89425, &(0x7f0000000280)={"e6696328276c80ede1cbb140551427cb", r4, 0x0, {0x0, 0x7ff}, {0x0, 0x8007}, 0x28e, [0x0, 0x400, 0x0, 0x10008, 0x0, 0x0, 0x0, 0x0, 0x0, 0x80, 0x100, 0x78, 0x3, 0x0, 0xfffffffffffffff8]}) ioctl$BTRFS_IOC_BALANCE_PROGRESS(r2, 0x84009422, &(0x7f00000018c0)={0x0, 0x0, {0x0, @struct}, {0x0, @struct, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @struct}, {0x0, @usage, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @struct}}) ioctl$BTRFS_IOC_SNAP_CREATE_V2(0xffffffffffffffff, 0x50009417, &(0x7f0000000840)={{}, r4, 0x3, @unused=[0x0, 0x6, 0x70000000, 0xfff], @devid=r5}) (async) ioctl$BTRFS_IOC_BALANCE_V2(0xffffffffffffffff, 0xc4009420, &(0x7f00000002c0)={0xae10d923b181b09, 0x1, {0x9, @struct={0x0, 0x101}, 0x0, 0x9, 0x90, 0x0, 0x5, 0xffff, 0x63, @struct={0xf0}, 0x7, 0x80000000, [0x2, 0xba, 0x5a26, 0x4, 0x1f, 0x7f]}, {0x40, @struct={0x2a89, 0xd3b5}, 0x0, 0xd7d8, 0xab, 0xfffffffffffffff7, 0x8, 0xdc54, 0x4, @usage=0x4, 0x120, 0x6, [0x3fcc, 0x178, 0x6, 0x8000000000000001, 0xfffffffffffffff8, 0x2]}, {0x29cb, @usage=0x8, r5, 0x3, 0x8000000000000001, 0x1, 0x2f, 0x81, 0x2, @usage, 0x7, 0x8, [0x7fff, 0x3259, 0x2, 0xf5b2, 0x3ff, 0x3]}, {0x2, 0x4, 0x3}}) ioctl$BTRFS_IOC_BALANCE_PROGRESS(0xffffffffffffffff, 0x84009422, &(0x7f0000000080)={0x0, 0x0, {0x0, @struct}, {}, {0x0, @usage, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @struct}}) ioctl$BTRFS_IOC_BALANCE_V2(0xffffffffffffffff, 0xc4009420, &(0x7f0000000480)={0x9, 0x0, {0x9, @usage=0x401, 0x0, 0x100, 0x6, 0xfd, 0x1a, 0x2400, 0x445, @usage=0xaf, 0x9, 0x6, [0x4, 0x3ff, 0x5, 0x2, 0x4, 0x24]}, {0x1, @struct={0x7, 0x101}, r5, 0x5f31, 0xfff, 0x2, 0x5, 0x8, 0x0, @struct={0xe35e, 0xfffffc01}, 0x4, 0x0, [0xffffffffffff34f4, 0x5, 0x4, 0x100, 0x3, 0x2]}, {0xab8, @struct={0x9ee2, 0x3}, r6, 0x5, 0x4, 0x100, 0x8000000000000000, 0x8, 0xe5, @struct={0xffffffc0}, 0x7, 0x2, [0x7, 0x0, 0x100000000, 0x10001, 0x8, 0x80000000]}, {0x800, 0x400, 0x6}}) ioctl$BTRFS_IOC_SCRUB(r1, 0xc400941b, &(0x7f0000000540)={0x0, 0x4, 0x20000000000, 0x1}) ioctl$BTRFS_IOC_BALANCE_V2(0xffffffffffffffff, 0xc4009420, &(0x7f0000000940)={0xa, 0x0, {0x0, @usage=0x6, r6, 0x0, 0x100000001, 0x81, 0xffffffffffffffff, 0x95b2, 0x472, @struct={0xffff, 0x803}, 0x3f, 0x1, [0x8, 0x0, 0x100000000, 0x2, 0x10001, 0xfffffffffffffff8]}, {0x80, @usage=0x20, 0x0, 0xff, 0x9, 0x401, 0x8000000000000000, 0xa8, 0x3, @usage, 0xb62, 0x3, [0xfba, 0x3, 0x5, 0x2000000, 0x9, 0x5]}, {0x8, @usage=0x2, r7, 0x5e, 0x1000, 0x602f, 0x285a, 0x8, 0x2, @usage, 0x8, 0x8001, [0x7, 0x7fffffffffffffff, 0x2, 0x5, 0x0, 0x10000]}, {0x8, 0x6, 0x5}}) (async) connect$inet6(r1, &(0x7f0000000480)={0xa, 0x0, 0x0, @ipv4={'\x00', '\xff\xff', @multicast2}}, 0x1c) (async) getsockopt$inet_sctp6_SCTP_SOCKOPT_CONNECTX3(r1, 0x84, 0x6f, &(0x7f0000000200)={0x0, 0x1c, &(0x7f0000000500)=[@in6={0xa, 0x0, 0x0, @private0={0xfc, 0x0, '\x00', 0x60}, 0x1}]}, &(0x7f00000004c0)=0x10) setsockopt$sock_timeval(r1, 0x1, 0x7, &(0x7f0000000440)={0x0, 0xea60}, 0x10) 00:02:51 executing program 3: r0 = syz_io_uring_setup(0x73d7, &(0x7f00000005c0), &(0x7f0000ee7000/0x2000)=nil, &(0x7f0000ffb000/0x2000)=nil, &(0x7f0000000380)=0x0, &(0x7f0000000100)=0x0) r3 = openat(0xffffffffffffff9c, &(0x7f0000000180)='./cgroup.cpu/cpuset.cpus\x00', 0x0, 0x0) open_by_handle_at(r3, &(0x7f0000000140)=@ceph_nfs_confh={0x10, 0x2, {0x3}}, 0x0) (async) mmap$IORING_OFF_SQES(&(0x7f0000eb3000/0x3000)=nil, 0x3000, 0x2000004, 0x12, r3, 0x10000000) (async) syz_io_uring_submit(r1, r2, &(0x7f00000004c0)=@IORING_OP_PROVIDE_BUFFERS={0x1f, 0x0, 0x0, 0x4, 0x0, 0x0}, 0x10001) (async) r4 = mmap$IORING_OFF_SQES(&(0x7f0000ee7000/0x3000)=nil, 0x3000, 0x6, 0x11, r0, 0x10000000) syz_io_uring_submit(r1, r2, &(0x7f0000000280)=@IORING_OP_SYNC_FILE_RANGE={0x8, 0x0, 0x0, @fd_index}, 0x0) (async) fsetxattr$security_evm(r3, &(0x7f0000000040), &(0x7f0000000240)=@sha1={0x1, "0700e7b3be197e553af23b790c9cbe2d86bf1ded"}, 0x15, 0x2) (async) syz_io_uring_setup(0x6717, &(0x7f00000002c0), &(0x7f0000000000/0x1000)=nil, &(0x7f0000400000/0xc00000)=nil, 0x0, 0x0) syz_io_uring_submit(r1, r4, &(0x7f0000000840)=@IORING_OP_SENDMSG={0x9, 0x0, 0x0, 0xffffffffffffffff, 0x0, 0x0}, 0x0) (async) syz_io_uring_submit(r1, r2, &(0x7f0000000180)=@IORING_OP_MADVISE={0x19, 0x0, 0x0, 0x0, 0x0, &(0x7f000004e000/0x2000)=nil, 0x2000}, 0x0) (async) syz_io_uring_submit(r1, r2, &(0x7f0000000340)=@IORING_OP_OPENAT={0x12, 0x0, 0x0, 0xffffffffffffff9c, 0x0, 0x0}, 0x0) (async) syz_io_uring_submit(r1, r4, &(0x7f0000000580)=@IORING_OP_CLOSE, 0x0) syz_io_uring_submit(r1, r2, &(0x7f00000001c0)=@IORING_OP_READ_FIXED={0x4, 0x0, 0x0, @fd_index}, 0x0) syz_io_uring_submit(r1, r2, &(0x7f0000000080)=@IORING_OP_READ=@pass_buffer={0x16, 0x0, 0x0, @fd_index, 0x0, 0x0}, 0x0) syz_io_uring_submit(r1, r4, &(0x7f0000000200)=@IORING_OP_TIMEOUT={0xb, 0x0, 0x0, 0x0, 0x0, 0x0}, 0x0) (async) syz_io_uring_setup(0x49ed, &(0x7f0000000080), &(0x7f0000ee8000/0x1000)=nil, &(0x7f0000002000/0x2000)=nil, &(0x7f0000000000)=0x0, &(0x7f0000000100)=0x0) syz_io_uring_submit(r1, r6, &(0x7f0000000400)=@IORING_OP_SPLICE, 0x0) (async) io_uring_enter(r0, 0x2bc3, 0x0, 0x0, 0x0, 0x0) (async) syz_io_uring_submit(r5, 0x0, &(0x7f00000003c0)=@IORING_OP_FSYNC={0x3, 0x65, 0x0, @fd, 0x0, 0x0, 0x0, 0x1, 0x1}, 0x6) 00:02:51 executing program 5: r0 = syz_open_dev$tty1(0xc, 0x4, 0x1) ioctl$KDFONTOP_SET(r0, 0x4b72, &(0x7f0000000400)={0x0, 0x0, 0xf, 0x8, 0x0, &(0x7f0000000000)="fb256614fe30d947a3185353e7685a2d315e459d080f35da9e895870ca2a1c42df5f8fe8fc428cf6accb12becae44f0318f92f0e59a50691be2706ac1e995a2668d18d37e6189580ad124435cb34656b214e0afbea359a42618963ffb3ecbcebc1622acf5aecfbc3a7d92b57bed385682eee0a5cf67ff614bb067242a3e21c51467cd28c134283f30ebda61f2d5c96b6ffaddf146f1540fc72807633770b28e26081dc94888e2e9039497785fee17063c0bffbce918e5529de9826ee3e441c39b2561f8fa58bc798c9b628c2f3695f593758a30c6b9b888c7282110b30a45c61773b5464bae32d85f28696ec2997d9647b69933b378855f8713aa32c8c35e654c1b2c89afb5a52f5c1d828351efbba20f6f8debff7e4856b832ef53a084ca4d3b0b89bf9bb248844bf89365ed1b9c9ae706bcf3ed5184be528368b75a6fe811303b4015d4be5b9331d0f1326d464b9fb40e0e66f0836ce10a06060ed9ec0f9b0dfb2f04df523175068b32b44c120e476f65b7f2e3efede85d842504d6d185ee1d6befd3ee1ed8c0c582534fe22e14a7098f4631969ffe1d1792852450a5494304d294f0d134d04a1c81a81e05900054fbf7688031d3eea1d0799147e48f02696e7e1e1d49e3fe328f458adf5a524168547ef5c338da371ba63482ee06115c8ab40fbddfdf1bf7505ead7acd5ad0f802c721bc796d18f97a16751db461f6b42f679bc385a7bb92a12a2900527a59310d4750898abae15346fa3aa5064f69ab96d97536e2ca4c2d667ac643824f02e3a3172b2a7721275d05a874cf5504993d9818a38ba7ab3d65b06b58d19e8096c33a49dcae4a6660193053a960f338c6353b521a7f4e4a0e27d7229f4b44755f9ee2b0f2550f95c2bfdb6dac023f56ede63c3d685437b71caf58b50eb011b31bd1c77db06cc56e3e87f4a345ed153977d07b342252c4932fe7f8fe3bd5e1e7a6fbfb67e58253a42ad90652b2b1a34cd16ecc7b1ea45e3f0190192f733f0d251cd585484f13ed75495539e2e679b50d8c2765c01197c6f7511977f7709675c3df7cbc7581f0f4d1232bce886600a24e1d5f1e0ae4fb04f250020d0eadfd7da2890ce02b5748ac9e9d1e208abc87e446bc2ccc22b95983d3775adfe26cc6c44cd56f3f0c53a60d9c82d4f48e9be7069c84d8fb26cc716625540fac3e11d391ee823f855ea1d74f20309cecc4158baa61ef0c0f5566665e000b9f755dd62cc2d2e47844aaeff66ebc8264d01a01e2ebd94f9cc9ee3aa1e0b1de56fbd3f101ef5af388cd32fa6c31994bcaf1dc1db60a719b2d01f2bdc63183c9c1b9d5a4884a6b7517847932995347f010e1ff044aafcdf73209f696ea51b5e59fef8185670dc54b28ce222311884e1ce9fd9d448805eebafae2f13812f1fc5e0a2abc46365bd3123330e516433e56e57e211a8ca4f72b0d12819"}) (async) r1 = socket$inet6_sctp(0xa, 0x5, 0x84) setsockopt$sock_int(0xffffffffffffffff, 0x1, 0xa, &(0x7f0000000040)=0x8001, 0x4) ioctl$sock_inet_tcp_SIOCINQ(0xffffffffffffffff, 0x541b, &(0x7f0000000000)) (async) r2 = accept$inet6(0xffffffffffffffff, &(0x7f0000000100)={0xa, 0x0, 0x0, @remote}, &(0x7f0000000140)=0x1c) (async) r3 = socket$inet_tcp(0x2, 0x1, 0x0) ioctl$sock_SIOCADDRT(r3, 0x890b, &(0x7f0000001840)={0x0, @l2tp={0x2, 0x0, @empty, 0x4}, @l2={0x1f, 0x6, @any, 0x992}, @nl=@unspec, 0x0, 0x0, 0x0, 0x0, 0x6102, &(0x7f0000000340)='veth0_macvtap\x00', 0x100000000000000, 0x1000400004, 0x1}) ioctl$BTRFS_IOC_GET_SUBVOL_INFO(r3, 0x81f8943c, &(0x7f00000003c0)={0x0, ""/256, 0x0, 0x0, 0x0}) ioctl$BTRFS_IOC_SET_RECEIVED_SUBVOL(0xffffffffffffffff, 0xc0c89425, &(0x7f0000000280)={"e6696328276c80ede1cbb140551427cb", r4, 0x0, {0x0, 0x7ff}, {0x0, 0x8007}, 0x28e, [0x0, 0x400, 0x0, 0x10008, 0x0, 0x0, 0x0, 0x0, 0x0, 0x80, 0x100, 0x78, 0x3, 0x0, 0xfffffffffffffff8]}) (async) ioctl$BTRFS_IOC_BALANCE_PROGRESS(r2, 0x84009422, &(0x7f00000018c0)={0x0, 0x0, {0x0, @struct}, {0x0, @struct, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @struct}, {0x0, @usage, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @struct}}) ioctl$BTRFS_IOC_SNAP_CREATE_V2(0xffffffffffffffff, 0x50009417, &(0x7f0000000840)={{}, r4, 0x3, @unused=[0x0, 0x6, 0x70000000, 0xfff], @devid=r5}) ioctl$BTRFS_IOC_BALANCE_V2(0xffffffffffffffff, 0xc4009420, &(0x7f00000002c0)={0xae10d923b181b09, 0x1, {0x9, @struct={0x0, 0x101}, 0x0, 0x9, 0x90, 0x0, 0x5, 0xffff, 0x63, @struct={0xf0}, 0x7, 0x80000000, [0x2, 0xba, 0x5a26, 0x4, 0x1f, 0x7f]}, {0x40, @struct={0x2a89, 0xd3b5}, 0x0, 0xd7d8, 0xab, 0xfffffffffffffff7, 0x8, 0xdc54, 0x4, @usage=0x4, 0x120, 0x6, [0x3fcc, 0x178, 0x6, 0x8000000000000001, 0xfffffffffffffff8, 0x2]}, {0x29cb, @usage=0x8, r5, 0x3, 0x8000000000000001, 0x1, 0x2f, 0x81, 0x2, @usage, 0x7, 0x8, [0x7fff, 0x3259, 0x2, 0xf5b2, 0x3ff, 0x3]}, {0x2, 0x4, 0x3}}) (async) ioctl$BTRFS_IOC_BALANCE_PROGRESS(0xffffffffffffffff, 0x84009422, &(0x7f0000000080)={0x0, 0x0, {0x0, @struct}, {}, {0x0, @usage, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @struct}}) ioctl$BTRFS_IOC_BALANCE_V2(0xffffffffffffffff, 0xc4009420, &(0x7f0000000480)={0x9, 0x0, {0x9, @usage=0x401, 0x0, 0x100, 0x6, 0xfd, 0x1a, 0x2400, 0x445, @usage=0xaf, 0x9, 0x6, [0x4, 0x3ff, 0x5, 0x2, 0x4, 0x24]}, {0x1, @struct={0x7, 0x101}, r5, 0x5f31, 0xfff, 0x2, 0x5, 0x8, 0x0, @struct={0xe35e, 0xfffffc01}, 0x4, 0x0, [0xffffffffffff34f4, 0x5, 0x4, 0x100, 0x3, 0x2]}, {0xab8, @struct={0x9ee2, 0x3}, r6, 0x5, 0x4, 0x100, 0x8000000000000000, 0x8, 0xe5, @struct={0xffffffc0}, 0x7, 0x2, [0x7, 0x0, 0x100000000, 0x10001, 0x8, 0x80000000]}, {0x800, 0x400, 0x6}}) (async) ioctl$BTRFS_IOC_SCRUB(r1, 0xc400941b, &(0x7f0000000540)={0x0, 0x4, 0x20000000000, 0x1}) ioctl$BTRFS_IOC_BALANCE_V2(0xffffffffffffffff, 0xc4009420, &(0x7f0000000940)={0xa, 0x0, {0x0, @usage=0x6, r6, 0x0, 0x100000001, 0x81, 0xffffffffffffffff, 0x95b2, 0x472, @struct={0xffff, 0x803}, 0x3f, 0x1, [0x8, 0x0, 0x100000000, 0x2, 0x10001, 0xfffffffffffffff8]}, {0x80, @usage=0x20, 0x0, 0xff, 0x9, 0x401, 0x8000000000000000, 0xa8, 0x3, @usage, 0xb62, 0x3, [0xfba, 0x3, 0x5, 0x2000000, 0x9, 0x5]}, {0x8, @usage=0x2, r7, 0x5e, 0x1000, 0x602f, 0x285a, 0x8, 0x2, @usage, 0x8, 0x8001, [0x7, 0x7fffffffffffffff, 0x2, 0x5, 0x0, 0x10000]}, {0x8, 0x6, 0x5}}) (async) connect$inet6(r1, &(0x7f0000000480)={0xa, 0x0, 0x0, @ipv4={'\x00', '\xff\xff', @multicast2}}, 0x1c) (async) getsockopt$inet_sctp6_SCTP_SOCKOPT_CONNECTX3(r1, 0x84, 0x6f, &(0x7f0000000200)={0x0, 0x1c, &(0x7f0000000500)=[@in6={0xa, 0x0, 0x0, @private0={0xfc, 0x0, '\x00', 0x60}, 0x1}]}, &(0x7f00000004c0)=0x10) setsockopt$sock_timeval(r1, 0x1, 0x7, &(0x7f0000000440)={0x0, 0xea60}, 0x10) 00:02:51 executing program 2: r0 = openat(0xffffffffffffff9c, &(0x7f0000000180)='./cgroup.cpu/cpuset.cpus\x00', 0x0, 0x0) open_by_handle_at(r0, &(0x7f0000000140)=@ceph_nfs_confh={0x10, 0x2, {0x3}}, 0x0) (async) r1 = socket$nl_route(0x10, 0x3, 0x0) (async) r2 = socket$netlink(0x10, 0x3, 0x0) (async) r3 = socket$netlink(0x10, 0x3, 0x0) (async) r4 = socket(0x10, 0x803, 0x0) sendmsg$IPSET_CMD_LIST(r4, &(0x7f00000005c0)={0x0, 0x0, &(0x7f0000000580)={0x0, 0x14}}, 0x0) getsockname$packet(r4, &(0x7f0000000380)={0x11, 0x0, 0x0, 0x1, 0x0, 0x6, @broadcast}, &(0x7f0000000200)=0x14) sendmsg$nl_route(r3, &(0x7f0000000040)={0x0, 0x0, &(0x7f0000000000)={&(0x7f00000008c0)=ANY=[@ANYBLOB="480000001000050700"/20, @ANYRES32=r5, @ANYBLOB="0000000000000000280012000c00010076657468"], 0x48}}, 0x0) sendmsg$nl_route_sched(r2, &(0x7f0000000040)={0x0, 0x0, &(0x7f0000000100)={&(0x7f0000000080)=@newqdisc={0x30, 0x24, 0xf1d, 0x0, 0x0, {0x0, 0x0, 0x0, r5, {}, {0xfff1, 0xffff}}, [@qdisc_kind_options=@q_clsact={0xb}]}, 0x30}, 0x1, 0x0, 0x0, 0x400c010}, 0x0) (async) sendmsg$nl_route_sched(r1, &(0x7f0000000280)={0x0, 0x0, &(0x7f0000000240)={&(0x7f00000003c0)=@delchain={0x24, 0x29, 0xd3d, 0x0, 0x0, {0x0, 0x0, 0x0, r5, {0xfff2, 0xffff}}}, 0x24}}, 0x0) (async) ioctl$sock_ipv4_tunnel_SIOCCHGTUNNEL(r0, 0x89f3, &(0x7f0000000000)={'gre0\x00', &(0x7f00000000c0)={'sit0\x00', r5, 0x8000, 0x1, 0x955, 0x9, {{0x19, 0x4, 0x0, 0x2d, 0x64, 0x68, 0x0, 0x3f, 0x0, 0x0, @loopback, @initdev={0xac, 0x1e, 0x1, 0x0}, {[@ra={0x94, 0x4}, @timestamp={0x44, 0x24, 0xc7, 0x0, 0xc, [0x7ff, 0xff, 0x1, 0xffff7bd6, 0x1ff, 0x10000, 0x40, 0xfffffffa]}, @lsrr={0x83, 0x13, 0x44, [@dev={0xac, 0x14, 0x14, 0x43}, @broadcast, @multicast2, @loopback]}, @ra={0x94, 0x4, 0x1}, @lsrr={0x83, 0xf, 0xbb, [@local, @remote, @initdev={0xac, 0x1e, 0x0, 0x0}]}]}}}}}) r6 = socket$nl_netfilter(0x10, 0x3, 0xc) sendmsg$IPCTNL_MSG_CT_GET_CTRZERO(r6, &(0x7f0000000540)={0x0, 0x0, &(0x7f0000000500)={&(0x7f0000000040)={0x50, 0x3, 0x1, 0x201, 0x0, 0x0, {0xa}, [@CTA_TUPLE_REPLY={0x30, 0x2, 0x0, 0x1, [@CTA_TUPLE_IP={0x2c, 0x1, 0x0, 0x1, @ipv6={{0x14, 0x3, @local}, {0x14, 0x4, @private0}}}]}, @CTA_FILTER={0xc, 0x19, 0x0, 0x1, [@CTA_FILTER_REPLY_FLAGS={0x8, 0x2, 0x589}]}]}, 0x50}}, 0x0) 00:02:51 executing program 1: prlimit64(0x0, 0xe, &(0x7f0000000040)={0x7, 0x8b}, 0x0) (async) sched_setscheduler(0x0, 0x1, &(0x7f0000000080)=0x7) (async) r0 = getpid() sched_setscheduler(r0, 0x2, &(0x7f0000000200)=0x4) (async, rerun: 32) socketpair$unix(0x1, 0x2, 0x0, &(0x7f0000000200)={0xffffffffffffffff, 0xffffffffffffffff}) (rerun: 32) connect$unix(r1, &(0x7f0000000180)=@abs, 0x6e) (async) sendmmsg$unix(r2, &(0x7f00000bd000), 0x318, 0x0) (async) recvmmsg(r1, &(0x7f00000000c0), 0x10106, 0x2, 0x0) (async) r3 = openat(0xffffffffffffff9c, &(0x7f000000c380)='./file0\x00', 0x20842, 0x110) writev(r3, &(0x7f0000000000)=[{&(0x7f0000000cc0)="e1", 0x5603d}], 0x1) (async, rerun: 64) connect$unix(r1, &(0x7f0000000380)=@file={0x1, './file0\x00'}, 0x6e) (async, rerun: 64) connect$unix(0xffffffffffffffff, &(0x7f0000000440)=@file={0x0, './file0\x00'}, 0x6e) (async) fdatasync(r3) (async) connect$unix(0xffffffffffffffff, &(0x7f00000002c0)=@file={0x0, './file0\x00'}, 0x6e) getsockname$packet(0xffffffffffffffff, &(0x7f0000000580)={0x11, 0x0, 0x0, 0x1, 0x0, 0x6, @broadcast}, 0x0) (async) timer_create(0x2, &(0x7f00000004c0)={0x0, 0x0, 0x2}, &(0x7f0000000500)) (async) sendmsg$nl_route(0xffffffffffffffff, &(0x7f0000000280)={&(0x7f0000000100)={0x10, 0x0, 0x0, 0x1000}, 0xc, &(0x7f0000000240)={&(0x7f0000000600)=ANY=[@ANYBLOB="1400100029844b2c4159af2941769cf5ac2facb6689a61ee004e109ff5366e1585711a0a4547a1de308836e39ce2388a174d78d8babf29d0de15b253d23ca68bd9cd7e38d1b4676aac775aeb51684ef6953eb77b78eb419899a6293bf4e4bf6b00020d4cfd4accedc04db4f0dc0b83c4546507dce73ed65936f42098407880f7ad75a249b844111e10518e6f9e8a1231d152b858b38e16be8b023d0a171e88180fb510225b817fc5339133624ec8a3"], 0x14}, 0x1, 0x0, 0x0, 0x4004c}, 0x8040) (async) mmap(&(0x7f0000ffa000/0x3000)=nil, 0x3000, 0x2000000, 0x40010, 0xffffffffffffffff, 0x3e46a000) (async, rerun: 32) fcntl$lock(r1, 0x5, &(0x7f0000000340)={0x0, 0x4, 0x6, 0x1, r0}) (async, rerun: 32) truncate(&(0x7f00000000c0)='./file0\x00', 0x0) 00:02:51 executing program 4: r0 = socket$pppoe(0x18, 0x1, 0x0) r1 = socket$pppoe(0x18, 0x1, 0x0) r2 = openat(0xffffffffffffff9c, &(0x7f0000000180)='./cgroup.cpu/cpuset.cpus\x00', 0x0, 0x0) open_by_handle_at(r2, &(0x7f0000000140)=@ceph_nfs_confh={0x10, 0x2, {0x3}}, 0x0) connect$pppoe(r2, &(0x7f0000000040)={0x18, 0x0, {0x1, @remote, 'rose0\x00'}}, 0x1e) connect$pppoe(r1, &(0x7f0000000080)={0x18, 0x0, {0x3, @empty, 'dummy0\x00'}}, 0x1e) connect$pppoe(r0, &(0x7f0000000000)={0x18, 0x0, {0x3, @empty, 'gretap0\x00'}}, 0x1e) syz_emit_ethernet(0x82, &(0x7f0000003280)=ANY=[@ANYBLOB="bbbbbbbbbbbbaaaaaaaaaabb886445f003"], 0x0) 00:02:51 executing program 3: r0 = syz_io_uring_setup(0x73d7, &(0x7f00000005c0), &(0x7f0000ee7000/0x2000)=nil, &(0x7f0000ffb000/0x2000)=nil, &(0x7f0000000380)=0x0, &(0x7f0000000100)=0x0) (async) r3 = openat(0xffffffffffffff9c, &(0x7f0000000180)='./cgroup.cpu/cpuset.cpus\x00', 0x0, 0x0) open_by_handle_at(r3, &(0x7f0000000140)=@ceph_nfs_confh={0x10, 0x2, {0x3}}, 0x0) (async) mmap$IORING_OFF_SQES(&(0x7f0000eb3000/0x3000)=nil, 0x3000, 0x2000004, 0x12, r3, 0x10000000) (async) syz_io_uring_submit(r1, r2, &(0x7f00000004c0)=@IORING_OP_PROVIDE_BUFFERS={0x1f, 0x0, 0x0, 0x4, 0x0, 0x0}, 0x10001) r4 = mmap$IORING_OFF_SQES(&(0x7f0000ee7000/0x3000)=nil, 0x3000, 0x6, 0x11, r0, 0x10000000) syz_io_uring_submit(r1, r2, &(0x7f0000000280)=@IORING_OP_SYNC_FILE_RANGE={0x8, 0x0, 0x0, @fd_index}, 0x0) (async) fsetxattr$security_evm(r3, &(0x7f0000000040), &(0x7f0000000240)=@sha1={0x1, "0700e7b3be197e553af23b790c9cbe2d86bf1ded"}, 0x15, 0x2) (async) syz_io_uring_setup(0x6717, &(0x7f00000002c0), &(0x7f0000000000/0x1000)=nil, &(0x7f0000400000/0xc00000)=nil, 0x0, 0x0) (async) syz_io_uring_submit(r1, r4, &(0x7f0000000840)=@IORING_OP_SENDMSG={0x9, 0x0, 0x0, 0xffffffffffffffff, 0x0, 0x0}, 0x0) (async) syz_io_uring_submit(r1, r2, &(0x7f0000000180)=@IORING_OP_MADVISE={0x19, 0x0, 0x0, 0x0, 0x0, &(0x7f000004e000/0x2000)=nil, 0x2000}, 0x0) syz_io_uring_submit(r1, r2, &(0x7f0000000340)=@IORING_OP_OPENAT={0x12, 0x0, 0x0, 0xffffffffffffff9c, 0x0, 0x0}, 0x0) (async) syz_io_uring_submit(r1, r4, &(0x7f0000000580)=@IORING_OP_CLOSE, 0x0) (async) syz_io_uring_submit(r1, r2, &(0x7f00000001c0)=@IORING_OP_READ_FIXED={0x4, 0x0, 0x0, @fd_index}, 0x0) (async) syz_io_uring_submit(r1, r2, &(0x7f0000000080)=@IORING_OP_READ=@pass_buffer={0x16, 0x0, 0x0, @fd_index, 0x0, 0x0}, 0x0) (async) syz_io_uring_submit(r1, r4, &(0x7f0000000200)=@IORING_OP_TIMEOUT={0xb, 0x0, 0x0, 0x0, 0x0, 0x0}, 0x0) (async) syz_io_uring_setup(0x49ed, &(0x7f0000000080), &(0x7f0000ee8000/0x1000)=nil, &(0x7f0000002000/0x2000)=nil, &(0x7f0000000000)=0x0, &(0x7f0000000100)=0x0) syz_io_uring_submit(r1, r6, &(0x7f0000000400)=@IORING_OP_SPLICE, 0x0) (async) io_uring_enter(r0, 0x2bc3, 0x0, 0x0, 0x0, 0x0) syz_io_uring_submit(r5, 0x0, &(0x7f00000003c0)=@IORING_OP_FSYNC={0x3, 0x65, 0x0, @fd, 0x0, 0x0, 0x0, 0x1, 0x1}, 0x6) 00:02:51 executing program 4: r0 = socket$pppoe(0x18, 0x1, 0x0) (async) r1 = socket$pppoe(0x18, 0x1, 0x0) (async) r2 = openat(0xffffffffffffff9c, &(0x7f0000000180)='./cgroup.cpu/cpuset.cpus\x00', 0x0, 0x0) open_by_handle_at(r2, &(0x7f0000000140)=@ceph_nfs_confh={0x10, 0x2, {0x3}}, 0x0) (async) connect$pppoe(r2, &(0x7f0000000040)={0x18, 0x0, {0x1, @remote, 'rose0\x00'}}, 0x1e) connect$pppoe(r1, &(0x7f0000000080)={0x18, 0x0, {0x3, @empty, 'dummy0\x00'}}, 0x1e) (async) connect$pppoe(r0, &(0x7f0000000000)={0x18, 0x0, {0x3, @empty, 'gretap0\x00'}}, 0x1e) (async) syz_emit_ethernet(0x82, &(0x7f0000003280)=ANY=[@ANYBLOB="bbbbbbbbbbbbaaaaaaaaaabb886445f003"], 0x0) 00:02:51 executing program 2: r0 = openat(0xffffffffffffff9c, &(0x7f0000000180)='./cgroup.cpu/cpuset.cpus\x00', 0x0, 0x0) open_by_handle_at(r0, &(0x7f0000000140)=@ceph_nfs_confh={0x10, 0x2, {0x3}}, 0x0) r1 = socket$nl_route(0x10, 0x3, 0x0) r2 = socket$netlink(0x10, 0x3, 0x0) (async) r3 = socket$netlink(0x10, 0x3, 0x0) (async) r4 = socket(0x10, 0x803, 0x0) sendmsg$IPSET_CMD_LIST(r4, &(0x7f00000005c0)={0x0, 0x0, &(0x7f0000000580)={0x0, 0x14}}, 0x0) (async) getsockname$packet(r4, &(0x7f0000000380)={0x11, 0x0, 0x0, 0x1, 0x0, 0x6, @broadcast}, &(0x7f0000000200)=0x14) sendmsg$nl_route(r3, &(0x7f0000000040)={0x0, 0x0, &(0x7f0000000000)={&(0x7f00000008c0)=ANY=[@ANYBLOB="480000001000050700"/20, @ANYRES32=r5, @ANYBLOB="0000000000000000280012000c00010076657468"], 0x48}}, 0x0) (async) sendmsg$nl_route_sched(r2, &(0x7f0000000040)={0x0, 0x0, &(0x7f0000000100)={&(0x7f0000000080)=@newqdisc={0x30, 0x24, 0xf1d, 0x0, 0x0, {0x0, 0x0, 0x0, r5, {}, {0xfff1, 0xffff}}, [@qdisc_kind_options=@q_clsact={0xb}]}, 0x30}, 0x1, 0x0, 0x0, 0x400c010}, 0x0) (async) sendmsg$nl_route_sched(r1, &(0x7f0000000280)={0x0, 0x0, &(0x7f0000000240)={&(0x7f00000003c0)=@delchain={0x24, 0x29, 0xd3d, 0x0, 0x0, {0x0, 0x0, 0x0, r5, {0xfff2, 0xffff}}}, 0x24}}, 0x0) ioctl$sock_ipv4_tunnel_SIOCCHGTUNNEL(r0, 0x89f3, &(0x7f0000000000)={'gre0\x00', &(0x7f00000000c0)={'sit0\x00', r5, 0x8000, 0x1, 0x955, 0x9, {{0x19, 0x4, 0x0, 0x2d, 0x64, 0x68, 0x0, 0x3f, 0x0, 0x0, @loopback, @initdev={0xac, 0x1e, 0x1, 0x0}, {[@ra={0x94, 0x4}, @timestamp={0x44, 0x24, 0xc7, 0x0, 0xc, [0x7ff, 0xff, 0x1, 0xffff7bd6, 0x1ff, 0x10000, 0x40, 0xfffffffa]}, @lsrr={0x83, 0x13, 0x44, [@dev={0xac, 0x14, 0x14, 0x43}, @broadcast, @multicast2, @loopback]}, @ra={0x94, 0x4, 0x1}, @lsrr={0x83, 0xf, 0xbb, [@local, @remote, @initdev={0xac, 0x1e, 0x0, 0x0}]}]}}}}}) (async) r6 = socket$nl_netfilter(0x10, 0x3, 0xc) sendmsg$IPCTNL_MSG_CT_GET_CTRZERO(r6, &(0x7f0000000540)={0x0, 0x0, &(0x7f0000000500)={&(0x7f0000000040)={0x50, 0x3, 0x1, 0x201, 0x0, 0x0, {0xa}, [@CTA_TUPLE_REPLY={0x30, 0x2, 0x0, 0x1, [@CTA_TUPLE_IP={0x2c, 0x1, 0x0, 0x1, @ipv6={{0x14, 0x3, @local}, {0x14, 0x4, @private0}}}]}, @CTA_FILTER={0xc, 0x19, 0x0, 0x1, [@CTA_FILTER_REPLY_FLAGS={0x8, 0x2, 0x589}]}]}, 0x50}}, 0x0) 00:02:51 executing program 3: syz_mount_image$f2fs(&(0x7f0000000000), &(0x7f0000000100)='./file0\x00', 0x4000000, 0x3b, &(0x7f0000000200)=[{&(0x7f0000010ea0)='\x00\x00p\x00'/32, 0x20, 0x8}, {&(0x7f0000010000)="1020f5f201000e00090000000300000010000000090000000100000001000000000000000040000000000000180000001f0000000200000002000000020000000100000018000000000200000002000000060000000a0000000e00000010000003000000010000000200000022557c7f4c464834a18da3b19154b95500000000", 0x80, 0x400}, {&(0x7f0000010080)='\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00%\x00\x00\x00mp\x00\x00\x00\x00\x00\x00wm\x00\x00\x00\x00\x00\x00og\x00\x00\x00\x00\x00\x00jp\x00\x00\x00\x00\x00\x00avi\x00\x00\x00\x00\x00m4v\x00\x00\x00\x00\x00m4p\x00\x00\x00\x00\x00mkv\x00\x00\x00\x00\x00mov\x00\x00\x00\x00\x00webm\x00\x00\x00\x00wav\x00\x00\x00\x00\x00m4a\x00\x00\x00\x00\x003gp\x00\x00\x00\x00\x00opus\x00\x00\x00\x00flac\x00\x00\x00\x00gif\x00\x00\x00\x00\x00png\x00\x00\x00\x00\x00svg\x00\x00\x00\x00\x00webp\x00\x00\x00\x00jar\x00\x00\x00\x00\x00deb\x00\x00\x00\x00\x00iso\x00\x00\x00\x00\x00gz\x00\x00\x00\x00\x00\x00xz\x00\x00\x00\x00\x00\x00zst\x00\x00\x00\x00\x00pdf\x00\x00\x00\x00\x00pyc\x00\x00\x00\x00\x00ttc\x00\x00\x00\x00\x00ttf\x00\x00\x00\x00\x00exe\x00\x00\x00\x00\x00apk\x00\x00\x00\x00\x00cnt\x00\x00\x00\x00\x00exo\x00\x00\x00\x00\x00odex\x00\x00\x00\x00vdex\x00\x00\x00\x00so\x00\x00\x00\x00\x00\x00cold\x00\x00\x00\x00db\x00'/352, 0x160, 0x860}, {&(0x7f00000101e0)='\x00\x00\x00\x00Linux version 5.17.11-1rodete2-amd64 (glinux-team@google.com) (gcc-11 (Debian 11.2.0-20) 11.2.0, GNU ld (GNU Binutils for Debian) 2.38) #1 SMP PREEMPT Debian 5.17.11-1rodete2 (2022-06-09)\x00', 0xc0, 0xa80}, {&(0x7f00000102a0)='\x00\x00\x00\x00Linux version 5.17.11-1rodete2-amd64 (glinux-team@google.com) (gcc-11 (Debian 11.2.0-20) 11.2.0, GNU ld (GNU Binutils for Debian) 2.38) #1 SMP PREEMPT Debian 5.17.11-1rodete2 (2022-06-09)\x00', 0xc0, 0xb80}, {&(0x7f0000000c00)="0000000000000000000000000000005cbed2b6f0e7a58a8ad0ddc32ee9da62a615dbf0437d4dec34afb1b0852b1a76d3cdcaa5753c32edd957aa7568800eed7a797c5087c177754cfaff5ddb3ba6dd084d523b7aa7f159abf6aee38a48b6a15a4d49c5c835739089a09eeb95382ee0d55adf966099243251eeee84cf0a1bd3e5f6482d259789eea5602bf61b38a731250af0921c3c0d585af9fb9e1cead8c42614eb700cda4febba20fe27e55bb9d131c9344fcd2225d1d9e40d58875f4b7bad2826021ffe4e6867b8e1c4", 0xcb, 0xc80}, {&(0x7f0000010380)="00000000000100"/32, 0x20, 0xebd}, {&(0x7f00000103a0)="1020f5f201000e0009000000030000000c000000090000000100000001000000000000000040000000000000180000001f0000000200000002000000020000000100000018000000000200000002000000060000000a0000000e00000010000003000000010000000200000022557c7f4c464834a18da3b19154b95500000000", 0x80, 0x1400}, {&(0x7f0000010420)='\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00%\x00\x00\x00mp\x00\x00\x00\x00\x00\x00wm\x00\x00\x00\x00\x00\x00og\x00\x00\x00\x00\x00\x00jp\x00\x00\x00\x00\x00\x00avi\x00\x00\x00\x00\x00m4v\x00\x00\x00\x00\x00m4p\x00\x00\x00\x00\x00mkv\x00\x00\x00\x00\x00mov\x00\x00\x00\x00\x00webm\x00\x00\x00\x00wav\x00\x00\x00\x00\x00m4a\x00\x00\x00\x00\x003gp\x00\x00\x00\x00\x00opus\x00\x00\x00\x00flac\x00\x00\x00\x00gif\x00\x00\x00\x00\x00png\x00\x00\x00\x00\x00svg\x00\x00\x00\x00\x00webp\x00\x00\x00\x00jar\x00\x00\x00\x00\x00deb\x00\x00\x00\x00\x00iso\x00\x00\x00\x00\x00gz\x00\x00\x00\x00\x00\x00xz\x00\x00\x00\x00\x00\x00zst\x00\x00\x00\x00\x00pdf\x00\x00\x00\x00\x00pyc\x00\x00\x00\x00\x00ttc\x00\x00\x00\x00\x00ttf\x00\x00\x00\x00\x00exe\x00\x00\x00\x00\x00apk\x00\x00\x00\x00\x00cnt\x00\x00\x00\x00\x00exo\x00\x00\x00\x00\x00odex\x00\x00\x00\x00vdex\x00\x00\x00\x00so\x00\x00\x00\x00\x00\x00cold\x00\x00\x00\x00db\x00'/352, 0x160, 0x1860}, {&(0x7f0000010580)='\x00\x00\x00\x00Linux version 5.17.11-1rodete2-amd64 (glinux-team@google.com) (gcc-11 (Debian 11.2.0-20) 11.2.0, GNU ld (GNU Binutils for Debian) 2.38) #1 SMP PREEMPT Debian 5.17.11-1rodete2 (2022-06-09)\x00', 0xc0, 0x1a80}, {&(0x7f0000010640)='\x00\x00\x00\x00Linux version 5.17.11-1rodete2-amd64 (glinux-team@google.com) (gcc-11 (Debian 11.2.0-20) 11.2.0, GNU ld (GNU Binutils for Debian) 2.38) #1 SMP PREEMPT Debian 5.17.11-1rodete2 (2022-06-09)\x00', 0xc0, 0x1b80}, {&(0x7f0000010700)='\x00\x00\x00\x00\b\x00'/32, 0x20, 0x1c80}, {&(0x7f0000010720)="00000000000100"/32, 0x20, 0x1ec0}, {&(0x7f0000010800)="00000000000000000000000000000000000000000000000000000000382c77a20000030000000003000000001000"/64, 0x40, 0x200fe0}, {&(0x7f0000010840)="000000000000000000000000000000000000000000000000000000060000000000020c600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000010000000510ec000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000002000000001400", 0xc0, 0x2011e0}, {&(0x7f0000010900)="000000000000000300000004007800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000500000000080000000000", 0x60, 0x2012e0}, {&(0x7f0000010960)="0000000b000000000400"/32, 0x20, 0x201380}, {&(0x7f0000010980)="00000000000000000000000000000000000000000000030000000000000300000000000008000000000000080000000001000800000000020000000000000000", 0x40, 0x2013e0}, {&(0x7f00000109c0)="03000000000000030000000000000400"/32, 0x20, 0x202000}, {&(0x7f0000000900)="00008c00"/32, 0x20, 0x202e00}, {&(0x7f0000010a00)="000000000000000000000000000000000000000000000000000000010000000005000000000000060000000000000700000000000008000000000000090000000000000800"/96, 0x60, 0x202fe0}, {&(0x7f0000010a80)="0000000000000000000000000000000000000000000000000000000100000000b1da173e0000000000100000000000000b000000000000000d0000001000000012000000000000000100000002000000ffffffffffffffffffffffffffffffffffffffff03000600000000000000000000000000030000000b00000005000000ffffffffffffffffffffffffffffffffffffffff05000000000000000000000000000000c5010000060000000100000007000000070000000a0000004000000040000000fc0f00000100"/224, 0xe0, 0x204fe0}, {&(0x7f0000000180)="00000000000000000000000000000000000000000000000000000000382c77a2", 0x20, 0x205fe0}, {&(0x7f0000010ba0)="0000000000000000feffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00"/96, 0x60, 0x3ff040}, {&(0x7f0000010c00)="b0da173e0000000000100000000000000b000000000000000d0000001000000012000000000000000100000002000000ffffffffffffffffffffffffffffffffffffffff03000600000000000000000000000000030000000b00000005000000ffffffffffffffffffffffffffffffffffffffff05000000000000000000000000000000c5000000060000000100000007000000070000000a0000004000000040000000fc0f00000100"/192, 0xc0, 0x400000}, {&(0x7f0000010cc0)="000000000000000000000000000000000000000000000000000000005e2ecb6b0000030000000003000000001000"/64, 0x40, 0x400fe0}, {&(0x7f0000010d00)="000000000000000000000000000000000000000000000000000000060000000000020c600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000010000000510ec000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000002000000001400", 0xc0, 0x4011e0}, {&(0x7f0000010dc0)="000000000000000300000004007800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000500000000080000000000", 0x60, 0x4012e0}, {&(0x7f0000010e20)="0000000b000000000400"/32, 0x20, 0x401380}, {&(0x7f0000010e40)="00000000000000000000000000000000000000000000030000000000000300000000000008000000000000080000000001000800000000020000000000000000", 0x40, 0x4013e0}, {&(0x7f0000010e80)="01000090738625da01c9e7ddbb1ca81f4527d800000000030000000000060000", 0x20, 0x402000}, {&(0x7f0000010ec0)="000000000000000000000000000000000000000000000000000000010000000005000000000000060000000000000700000000000008000000000000090000000000000800"/96, 0x60, 0x402fe0}, {&(0x7f0000010f20)="0000000000000000000000000000000000000000000000000000000100000000", 0x20, 0x403fe0}, {&(0x7f0000010f40)="0000000000000000000000000000000000000000000000000000000100000000b0da173e0000000000100000000000000b000000000000000d0000001000000012000000000000000100000002000000ffffffffffffffffffffffffffffffffffffffff03000600000000000000000000000000030000000b00000005000000ffffffffffffffffffffffffffffffffffffffff05000000000000000000000000000000c5000000060000000100000007000000070000000a0000004000000040000000fc0f00000100"/224, 0xe0, 0x404fe0}, {&(0x7f0000011020)="000000000000000000000000000000000000000000000000000000005e2ecb6b", 0x20, 0x405fe0}, {&(0x7f0000000140)="b0da8ef35e2ecb6b000000000000000000000000000000000000000000000000a5d99c0d43aee315bf34b14db11d588cc6bc7b", 0x33, 0x5ff000}, {&(0x7f0000011060)="0000000000000000feffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00"/96, 0x60, 0x5ff040}, {&(0x7f0000010740)="b1da173e0000000000100000000000000b000000000000000d0000001000000012000000000000000100000002000000ffffffffffffffffffffffffffffffffffffffff03000600000000000000000000000000030000000b00000005000000ffffffffffffffffffffffffffffffffffffffff05000000000000000000000000000000c5010000060000000100000007000000070000000a0000004000000040000000fc0f00000100"/192, 0xc0, 0xa00000}, {&(0x7f0000011120)="000000000000000000000100000001000000000200000001000000000300000001100000000400000002100000000500000000120000000600000001120000000700000002120000000800000003120000000900000004120000000000000000", 0x60, 0xc00000}, {&(0x7f0000011180)="ed41002080761000535f010003000000001000000000000002000000000000005e1f1f6300000000651f1f6300000000651f1f630000000000000000c9675f30c9675f30000000000100"/96, 0x60, 0x1001000}, {&(0x7f00000111e0)="000000000000000004000000011600"/32, 0x20, 0x1001160}, {&(0x7f0000011200)="0000000000000000030000000300000000000000adda173e0000000002100000ed4100250000000000000000020000007c0d0000000000000100000000000000651f1f6300000000651f1f6300000000651f1f6300000000c9675f30c9675f30c9675f30c76f1e44000000000000000000100000030000000500000066696c653000"/160, 0xa0, 0x1001fe0}, {&(0x7f0000000940)="00000000000000002400000000000000000000000000000000000000000000000000000000000000000cbc7ff08b5305ff15d7a61a574c00000000000000000f00000000000000000000000000000000000000000000000000000000000000000000000400000001000200000000030000000200024a8113ed050000000500018dceceda450600000005000700000000", 0x90, 0x1002160}, {&(0x7f0000011320)='\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00.\x00\x00\x00\x00\x00\x00\x00..\x00\x00\x00\x00\x00\x00file0\x00\x00\x00file1\x00'/64, 0x40, 0x1002960}, {&(0x7f0000000080)="000000000000000004000000040000000000000000000310000021c889933292eab88506c2bf4b219e41586b2ee7e0c3b5dc950e5fe51ed5d17fe4532cc4dda633133cc8325e596aaae7bf8240bdeba0be9e65d43d3b16139a6e1e7481364cab100c31c38db2492eb6b5719ceb4d", 0x6e, 0x1002fe0}, {&(0x7f0000011380)="ed81002b0000000000000000010000001a040000000000000100000000000000651f1f6300000000651f1f6300000000651f1f6300000000c9675f30c9675f30c9675f305ee78c74000000000000000000000000040000000500000066696c653000"/128, 0x80, 0x1200000}, {&(0x7f0000011400)='\x00\x00\x00\x00\x00\x00\x00\x00$\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00syzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkal\x00'/1120, 0x460, 0x1200160}, {&(0x7f0000011860)="0000000000000000050000000500000001000000adda173e0000000001120000ffa1002b00000000000000000100000027000000000000000100000000000000651f1f6300000000651f1f6300000000651f1f6300000000c9675f30c9675f30c9675f30f1689d18000000000000000000000000040000000500000066696c653100"/160, 0xa0, 0x1200fe0}, {&(0x7f0000011900)='\x00\x00\x00\x00\x00\x00\x00\x00$\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00/tmp/syz-imagegen2941961749/file0/file0\x00\x00\x00\x00\x00\x00\x00\x00\x00', 0x60, 0x1201160}, {&(0x7f0000011a00)='\x00\x00\x00\x00\x00\x00\x00\x00$\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00syzkallers\x00\x00\x00\x00\x00\x00', 0x40, 0x1202160}, {&(0x7f0000011a40)="0000000000000000000000001120f5f20100000000000000000000000000000000000000010606007861747472317861747472310106060078617474723278617474723200"/96, 0x60, 0x1202f00}, {&(0x7f0000011aa0)="0000000000000000070000000700000001000000adda173e0000000003120000", 0x20, 0x1202fe0}, {&(0x7f0000011ac0)="ed81012b00000000000000000100000064000000000000000100000000000000651f1f6300000000651f1f6300000000651f1f6300000000c9675f30c9675f30c9675f30559f02d3000000000000000000000000030000000900000066696c652e636f6c6400"/128, 0x80, 0x1203ffc}, {&(0x7f0000011b40)='\x00\x00\x00\x00\x00\x00\x00\x00$\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00syzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallers\x00'/160, 0xa0, 0x1204160}, {&(0x7f0000011be0)="0000000000000000090000000900000001000000adda173e0000000005120000ed81022100000000000000000200000028230000000000000400000000000000651f1f6300000000651f1f6300000000651f1f6300000000c9675f30c9675f30c9675f30b41fa909000000000000000000000000030000000500000066696c653300"/160, 0xa0, 0x1204fe0}, {&(0x7f0000011c80)="02160000030000002400000000000000000000000000000000000000000000000000000000000000000000000216000003160000041600"/64, 0x40, 0x1205160}, {&(0x7f0000011cc0)="0000000000000000080000000800000001000000aeda173eb7c33c1906120000", 0x20, 0x1205fe0}, {&(0x7f0000011ce0)="ff0000000000000000000000000000000000000000000000000000000000000000000300000001000200000000030000000200024a8113ed040000000500028dcece4507000000050001baeed06f0800000005000153bfc55008000000050001120052230900000009000100"/128, 0x80, 0x1601000}, {&(0x7f0000011d60)='\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00.\x00\x00\x00\x00\x00\x00\x00..\x00\x00\x00\x00\x00\x00file0\x00\x00\x00file1\x00\x00\x00file2\x00\x00\x00file3\x00\x00\x00file.cold\x00'/96, 0x60, 0x1601940}], 0x0, &(0x7f00000007c0)=ANY=[@ANYBLOB="00003f10e2d7428f7ff99d98cd1cdc1e2fa50407dbc95739e026b95176c1ba732becc3dddfc7f17060f6312da454cb4a8a8d4042fb51bc0fa9607ec5cbef3456ef2ada10e34603b0c115ab20b4fa4bd6fd3a18b258dff7e760d071cb590bc838aaeb1d9553881cf5e0d603cec2940e27ddf93e7e2a9e39e4b06ba0bc7b365a4e0e5aa57acbe090e4bc0318bf1cba3724282c64acc31060d2e76ba7fca4d49896b879ec7007728c7a"], 0x1) r0 = openat(0xffffffffffffff9c, &(0x7f0000000180)='./cgroup.cpu/cpuset.cpus\x00', 0x0, 0x0) open_by_handle_at(r0, &(0x7f0000000140)=@ceph_nfs_confh={0x10, 0x2, {0x3}}, 0x0) ioctl$BLKDISCARD(r0, 0x1277, &(0x7f0000000040)=0x5) 00:02:51 executing program 0: ioctl$TUNGETIFF(0xffffffffffffffff, 0x800454d2, &(0x7f00000002c0)={'veth1\x00'}) (async) r0 = openat(0xffffffffffffff9c, &(0x7f0000000180)='./cgroup.cpu/cpuset.cpus\x00', 0x0, 0x0) r1 = socket$inet_tcp(0x2, 0x1, 0x0) setsockopt$ARPT_SO_SET_REPLACE(r1, 0x0, 0x60, &(0x7f0000000440)={'filter\x00', 0x11, 0x4, 0x3f0, 0x0, 0x0, 0x200, 0x308, 0x308, 0x308, 0x7fffffe, 0x0, {[{{@arp={@remote, @broadcast, 0x0, 0x0, 0x0, 0x0, {@mac=@link_local={0x2}}, {@mac}, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 'bridge0\x00', 'erspan0\x00'}, 0xc0, 0x100}, @unspec=@RATEEST={0x40, 'RATEEST\x00', 0x0, {'syz1\x00'}}}, {{@uncond, 0xc0, 0x100}, @unspec=@RATEEST={0x40, 'RATEEST\x00', 0x0, {'syz0\x00'}}}, {{@arp={@multicast1, @initdev={0xac, 0x1e, 0x0, 0x0}, 0x0, 0x0, 0x0, 0x0, {@mac=@link_local}, {@mac=@multicast}, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 'veth0_vlan\x00', 'ipvlan1\x00'}, 0xc0, 0x108}, @unspec=@IDLETIMER={0x48, 'IDLETIMER\x00', 0x0, {0x0, 'syz0\x00'}}}], {{'\x00', 0xc0, 0xe8}, {0x28, '\x00', 0x2}}}}, 0x440) (async) open_by_handle_at(r1, &(0x7f0000000980)=@isofs_parent={0x14, 0x2, {0x7, 0x4, 0xff, 0xfffffffc, 0x9, 0x3f67f4e2}}, 0x1815c1) ioctl$TUNGETDEVNETNS(r0, 0x54e3, 0x0) syz_read_part_table(0x0, 0x1, &(0x7f0000001b40)=[{&(0x7f0000000000)="5244534bb0bec2da09ebee962179cae44139b7dfab10c3e84d543636eefc2b807a6fad71bd2420fe39973cfad4c931028e3215397780dac1409a9df0671875b8631296aef610d69438e12430793a9a5d1ced5ae5c8bd9140a8ff8ea745c7b09d2fa46d5eb725102292114d35fbf4e05b8002206d3479929a96065c9c2208385cfa753828f9d5ffefc33e5e131841038d2055e70a109273e59ab489561b3130376bb6c5fc2ed43fa75caf412887e183e85dfe57e522a0ddb5ceb18f44dcd578200e5056702a3e2b32bef36ffec6d87a5937a80fa475a5bad96d230bd82f840a0652856450f4947a5e01043fd6bf482acae1a9faf088904de6a0483c0d871bd321a779dd3b70abdd9325f1780b121c2b5de1817a13f6ea2c6c13ec944c6f91fb13e1edc49165bd243ee42bb09728c88b60ab7d04ca267e568a6f1a5d40cb3ecdb98d783af04cabaf42c0d422c0acda1aa41a3f21304ce9b38501df7b450c7ed4b5741eb020e3326d38a17ee31620506fea0bd45bcc3695afa8042322cfe695e016b6cc8b4c4346ed72ac5126c8aac307a0c3ab69fb0f0c1826fbac349035269829ef3a7b236d3d31cb092cc83e34d5a4cafbcc764dca63f46c32d65142e9afd8e18b21833ebbf55dd6b96d1f973d703100dcb04b1b8569143f4c6ddcfd4c90a1fd9e81cb8f9b9e2a58f38a9415394657eceb00"/512, 0x200}]) (async) syz_read_part_table(0x9, 0x1, &(0x7f0000000280)=[{&(0x7f0000000200)="238ee5b45b82ca9699eff650c4d072e68474af192e897a179e191ec28c1869697874ca2c42e3bf0306393ad7319691ecb66ba5e2a8fa4c3591f95c221483b76b60c121fe9cf62109b377176d29d9c1fe08efdaf8fda56a84", 0x58, 0x20}]) ioctl$TUNGETDEVNETNS(0xffffffffffffffff, 0x54e3, 0x0) syz_read_part_table(0x3, 0x9, &(0x7f0000000880)=[{&(0x7f0000000300)="8b57e59d54f6f2b7e2e6cbc37dd574e361ea2ae3d0fc6d0bf103e459b6de5c1b5b4d6c0e6b1fc6254cd2ce4a372919a9695723aa277ecdb40aca24f884d8a08a204e33a440ccc9f5a4d2c2f1065f206f553ca3877a8dcf77a06db1fe0f04c5fb134c7b93dcc1d9b7eb72", 0x6a, 0x7}, {&(0x7f0000000380)="900e47bfb1db785e648900e304b047a6c7b45b314fa3b1921bd8cce46747f0a69d29f426b663d79f8a4817933321fad50f666d45fdb97a530fae9bf047aa07304cc8c7d5fc38173f174067a5e978af59e93a222877039e81f6a4f4c400e970cfc44c3bbb5df2a2e0a9d0864d3caeed760e95cf197804b208cbe6ee205f8b89f07679c2bbfa5c0688228a46591eca1980864842b94c634f668683", 0x9a, 0x81}, {&(0x7f0000000440)="0a7d72246534e4f4501da90cc82487ab9f070c23d68512706e6650afabe7f98655e2e843a1c4d28232f10c2901def8e50ccbd13f8ac510ef04e4caa7bd159c2fd33b229be3d2c2ce386a1a8f28b28ea9eee808288bee8f810092b4f17d2f37fcb62b0a3b9fee0919087800c9d319b7696d8afc13dc54d2c5d0c9c90497ab1d6dca1263a4e62b72c9fce83c12c2976af201c92d7dccb3e99b096fc88dab6edb1fe118554b045d0de1b1f8e2f349ed764fe95bb55d39c86f63f58a9dd4312480d3121fc8c76ef3dd2969731a17fa49dceb55da1f7eba491348fa1768f1d035", 0xde, 0x6}, {&(0x7f0000000540)="99b89c5ac54133843dac0abb171d7089408eea077b1c6610a290fbbad1ba8d2927858b0c974d48af8e2f6817dccc78bb2bfd7fbb15a5bd4016bb3061a1af204f29e408f3fb70ea367e", 0x49, 0xfffffffffffffffc}, {&(0x7f00000005c0)="128b28e0813d0c0ae1e0834e49549e7966b349e54e55ffa2b2f025c5f30581ae953fa4ad4d7b7a5295", 0x29, 0x8}, {&(0x7f0000000600)="4845605cad0f3fe93da31c7d50570e6e38414222216921f6c4dfe83b3f07dd014c579d7154ea53cb505e3993080776a81c79281d58914e651ee480d041ceea7db2f89fce6adbd92601b8e0bad040be11704862d1f67d8357353600c5d413c2c3c85368a5d2439ce57fb123b5d15ae346", 0x70, 0x8}, {&(0x7f0000000680)="233e03a2b8b1bf090361a67c1c113d0037a35799c1cda345f734a8e405cd727f4c048207f42f5c88c9a733d3802a75504bc4b973bd6f3b83ce1c498cf6071c0dfccaebc5097fad228cb14abb6a031bcbd5e6d5a96654b7ec361804677f856061b0404f0c7f665f576c706ba9f2fa01c4554c9b2de69db0db2296230794ef72014a81bd6e98ea583965a3e55d4dba16a002fe3566b180c9803de1b7acb10c58f73970938505c0f21be0f06b324e4b234719dcd1aaba", 0xb5, 0x77b02439}, {&(0x7f0000000740)="effa239a5c2febd9397755e342ad8143dd0f0ccd88f9cdbd7affb38a54c0e70b1123b7e3ebf5702fc72a78c0629bca973bc1a2c0fcd9b1689488991c32a96aeeb9534ac4865ab7865610bcaacdc326571f1540cdcf357e72f29f6b1544aabdabdc56846fee0dd20152d9e6a1c6f81760f69beedebc516924f82d9cbe70545c99d01ed7d93c85dd2f61f785bca60e0166eae81fc5e58839f735d5ab62235bd351dd71ee28f99c9d51a4d273caa9b20a9d0ebbfc6729efefa0e65777e7c5590aa45551076ce874c7d860aea3ba54dd9f0130b2989a3b10a68336e55ffb030afa2c5b3260d616d2cff36446d5b21c9c42d68b4a93f25c3aa21c2d6b194cb38c58", 0xff, 0x4}, {&(0x7f0000000840)="194232a03a3689bd18b4b2e020e8", 0xe, 0x1f}]) [ 171.255631][ T4324] loop3: detected capacity change from 0 to 131072 [ 171.268740][ T4324] F2FS-fs (loop3): Invalid log_blocksize (16), supports only 12 [ 171.270413][ T4324] F2FS-fs (loop3): Can't find valid F2FS filesystem in 1th superblock 00:02:51 executing program 4: r0 = socket$pppoe(0x18, 0x1, 0x0) (async) r1 = socket$pppoe(0x18, 0x1, 0x0) r2 = openat(0xffffffffffffff9c, &(0x7f0000000180)='./cgroup.cpu/cpuset.cpus\x00', 0x0, 0x0) open_by_handle_at(r2, &(0x7f0000000140)=@ceph_nfs_confh={0x10, 0x2, {0x3}}, 0x0) (async) connect$pppoe(r2, &(0x7f0000000040)={0x18, 0x0, {0x1, @remote, 'rose0\x00'}}, 0x1e) (async) connect$pppoe(r1, &(0x7f0000000080)={0x18, 0x0, {0x3, @empty, 'dummy0\x00'}}, 0x1e) (async) connect$pppoe(r0, &(0x7f0000000000)={0x18, 0x0, {0x3, @empty, 'gretap0\x00'}}, 0x1e) (async) syz_emit_ethernet(0x82, &(0x7f0000003280)=ANY=[@ANYBLOB="bbbbbbbbbbbbaaaaaaaaaabb886445f003"], 0x0) [ 171.290552][ T4324] F2FS-fs (loop3): invalid crc_offset: 0 00:02:51 executing program 2: socket$alg(0x26, 0x5, 0x0) r0 = syz_io_uring_setup(0x2c00, &(0x7f0000000340), &(0x7f0000ee9000/0x1000)=nil, &(0x7f0000ffc000/0x2000)=nil, &(0x7f0000000000)=0x0, &(0x7f0000000040)=0x0) syz_io_uring_submit(r1, r2, &(0x7f0000000200)=@IORING_OP_POLL_ADD={0x6, 0x0, 0x0, @fd_index=0x3, 0x0, 0x0, 0x0, {}, 0x1}, 0x0) syz_io_uring_submit(r1, r2, &(0x7f0000000080), 0x8) io_uring_enter(r0, 0x90e, 0x0, 0x0, 0x0, 0x0) syz_io_uring_setup(0x3028, &(0x7f0000000540)={0x0, 0x110b, 0x18, 0x1, 0x10}, &(0x7f0000ffd000/0x3000)=nil, &(0x7f0000ffc000/0x4000)=nil, &(0x7f00000005c0), &(0x7f0000000600)) r3 = openat(0xffffffffffffff9c, &(0x7f0000000180)='./cgroup.cpu/cpuset.cpus\x00', 0x0, 0x0) r4 = mmap$IORING_OFF_CQ_RING(&(0x7f0000ee9000/0x3000)=nil, 0x3000, 0x2000002, 0x1010, r3, 0x8000000) syz_io_uring_setup(0x501d, &(0x7f0000000240), &(0x7f0000002000/0x2000)=nil, &(0x7f0000ffd000/0x3000)=nil, &(0x7f0000000100)=0x0, &(0x7f0000000180)=0x0) syz_io_uring_submit(r5, r6, &(0x7f0000000000)=@IORING_OP_READ=@pass_buffer={0x16, 0x0, 0x0, @fd_index=0x5, 0xffffffffffffffff, &(0x7f0000000040)=""/18, 0x12}, 0x0) r7 = openat(0xffffffffffffff9c, &(0x7f0000000180)='./cgroup.cpu/cpuset.cpus\x00', 0x0, 0x0) open_by_handle_at(r7, &(0x7f0000000140)=@ceph_nfs_confh={0x10, 0x2, {0x3}}, 0x0) syz_io_uring_setup(0x6c43, &(0x7f00000002c0)={0x0, 0x478a, 0x200, 0x3, 0x2cf, 0x0, r3}, &(0x7f0000003000/0x3000)=nil, &(0x7f0000ffd000/0x1000)=nil, &(0x7f0000000640), &(0x7f00000003c0)=0x0) r9 = openat$dlm_control(0xffffffffffffff9c, &(0x7f0000000440), 0x408d00, 0x0) syz_io_uring_submit(r4, r8, &(0x7f0000000500)=@IORING_OP_SYMLINKAT={0x26, 0x4, 0x0, r9, &(0x7f0000000480)='./cgroup.cpu/cpuset.cpus\x00', &(0x7f00000004c0)='./cgroup.cpu/cpuset.cpus\x00', 0x0, 0x0, 0x1}, 0xffffd48a) syz_io_uring_submit(r4, r6, &(0x7f00000001c0)=@IORING_OP_UNLINKAT={0x24, 0x2a, 0x0, r7, 0x0, &(0x7f0000000100)='./cgroup.cpu/cpuset.cpus\x00', 0x0, 0x0, 0x1}, 0xf6) open_by_handle_at(r3, &(0x7f0000000140)=ANY=[@ANYBLOB="100000000200000100000000000000000900000000001200"], 0x0) setsockopt$ALG_SET_KEY(r3, 0x117, 0x1, &(0x7f00000000c0)="aaaff31b5e2db2cc1529952606838cbd36bfd4c60cb797262c3f2788575eccbab2d5ba7c85", 0x25) [ 171.325409][ T4324] F2FS-fs (loop3): Disable nat_bits due to incorrect cp_ver (7767352964634106544, 7767352967678581424) [ 171.331396][ T4324] F2FS-fs (loop3): NAT is corrupt, run fsck to fix it [ 171.338807][ T4324] F2FS-fs (loop3): Failed to initialize F2FS node manager (-22) 00:02:51 executing program 4: ioctl$DRM_IOCTL_SYNCOBJ_CREATE(0xffffffffffffffff, 0xc00864bf, &(0x7f0000000000)={0x0, 0x1}) ioctl$DRM_IOCTL_SYNCOBJ_TIMELINE_WAIT(0xffffffffffffffff, 0xc02864ca, &(0x7f00000000c0)={&(0x7f0000000040)=[0x0, r0], &(0x7f0000000080)=[0x5], 0x65a1, 0x2, 0x2}) syz_io_uring_setup(0x20f0, &(0x7f0000000440), &(0x7f0000d64000/0x3000)=nil, &(0x7f0000ef1000/0x1000)=nil, &(0x7f00000004c0), &(0x7f0000000500)) [ 171.367103][ T4345] loop0: detected capacity change from 0 to 1 [ 171.415867][ T4345] Dev loop0: RDB in block 0 has bad checksum [ 171.417344][ T4345] Dev loop0: unable to read RDB block 1 [ 171.419022][ T4345] loop0: unable to read partition table [ 171.420368][ T4345] loop0: partition table beyond EOD, truncated [ 171.423967][ T4345] loop_reread_partitions: partition scan of loop0 () failed (rc=-5) 00:02:51 executing program 5: write$UHID_DESTROY(0xffffffffffffffff, &(0x7f0000000000), 0x4) r0 = syz_open_dev$sndctrl(&(0x7f0000000300), 0x0, 0x0) ioctl$SNDRV_CTL_IOCTL_ELEM_REMOVE(r0, 0xc0405519, &(0x7f0000000340)) r1 = openat2(0xffffffffffffff9c, &(0x7f0000000040)='./file0\x00', &(0x7f0000000080)={0x22040, 0x8, 0x8}, 0x18) ioctl$SNDRV_CTL_IOCTL_POWER_STATE(r1, 0x800455d1, &(0x7f00000000c0)) 00:02:51 executing program 2: socket$alg(0x26, 0x5, 0x0) r0 = syz_io_uring_setup(0x2c00, &(0x7f0000000340), &(0x7f0000ee9000/0x1000)=nil, &(0x7f0000ffc000/0x2000)=nil, &(0x7f0000000000)=0x0, &(0x7f0000000040)=0x0) syz_io_uring_submit(r1, r2, &(0x7f0000000200)=@IORING_OP_POLL_ADD={0x6, 0x0, 0x0, @fd_index=0x3, 0x0, 0x0, 0x0, {}, 0x1}, 0x0) syz_io_uring_submit(r1, r2, &(0x7f0000000080), 0x8) io_uring_enter(r0, 0x90e, 0x0, 0x0, 0x0, 0x0) syz_io_uring_setup(0x3028, &(0x7f0000000540)={0x0, 0x110b, 0x18, 0x1, 0x10}, &(0x7f0000ffd000/0x3000)=nil, &(0x7f0000ffc000/0x4000)=nil, &(0x7f00000005c0), &(0x7f0000000600)) r3 = openat(0xffffffffffffff9c, &(0x7f0000000180)='./cgroup.cpu/cpuset.cpus\x00', 0x0, 0x0) r4 = mmap$IORING_OFF_CQ_RING(&(0x7f0000ee9000/0x3000)=nil, 0x3000, 0x2000002, 0x1010, r3, 0x8000000) syz_io_uring_setup(0x501d, &(0x7f0000000240), &(0x7f0000002000/0x2000)=nil, &(0x7f0000ffd000/0x3000)=nil, &(0x7f0000000100)=0x0, &(0x7f0000000180)=0x0) syz_io_uring_submit(r5, r6, &(0x7f0000000000)=@IORING_OP_READ=@pass_buffer={0x16, 0x0, 0x0, @fd_index=0x5, 0xffffffffffffffff, &(0x7f0000000040)=""/18, 0x12}, 0x0) r7 = openat(0xffffffffffffff9c, &(0x7f0000000180)='./cgroup.cpu/cpuset.cpus\x00', 0x0, 0x0) open_by_handle_at(r7, &(0x7f0000000140)=@ceph_nfs_confh={0x10, 0x2, {0x3}}, 0x0) syz_io_uring_setup(0x6c43, &(0x7f00000002c0)={0x0, 0x478a, 0x200, 0x3, 0x2cf, 0x0, r3}, &(0x7f0000003000/0x3000)=nil, &(0x7f0000ffd000/0x1000)=nil, &(0x7f0000000640), &(0x7f00000003c0)=0x0) r9 = openat$dlm_control(0xffffffffffffff9c, &(0x7f0000000440), 0x408d00, 0x0) syz_io_uring_submit(r4, r8, &(0x7f0000000500)=@IORING_OP_SYMLINKAT={0x26, 0x4, 0x0, r9, &(0x7f0000000480)='./cgroup.cpu/cpuset.cpus\x00', &(0x7f00000004c0)='./cgroup.cpu/cpuset.cpus\x00', 0x0, 0x0, 0x1}, 0xffffd48a) syz_io_uring_submit(r4, r6, &(0x7f00000001c0)=@IORING_OP_UNLINKAT={0x24, 0x2a, 0x0, r7, 0x0, &(0x7f0000000100)='./cgroup.cpu/cpuset.cpus\x00', 0x0, 0x0, 0x1}, 0xf6) open_by_handle_at(r3, &(0x7f0000000140)=ANY=[@ANYBLOB="100000000200000100000000000000000900000000001200"], 0x0) setsockopt$ALG_SET_KEY(r3, 0x117, 0x1, &(0x7f00000000c0)="aaaff31b5e2db2cc1529952606838cbd36bfd4c60cb797262c3f2788575eccbab2d5ba7c85", 0x25) socket$alg(0x26, 0x5, 0x0) (async) syz_io_uring_setup(0x2c00, &(0x7f0000000340), &(0x7f0000ee9000/0x1000)=nil, &(0x7f0000ffc000/0x2000)=nil, &(0x7f0000000000), &(0x7f0000000040)) (async) syz_io_uring_submit(r1, r2, &(0x7f0000000200)=@IORING_OP_POLL_ADD={0x6, 0x0, 0x0, @fd_index=0x3, 0x0, 0x0, 0x0, {}, 0x1}, 0x0) (async) syz_io_uring_submit(r1, r2, &(0x7f0000000080), 0x8) (async) io_uring_enter(r0, 0x90e, 0x0, 0x0, 0x0, 0x0) (async) syz_io_uring_setup(0x3028, &(0x7f0000000540)={0x0, 0x110b, 0x18, 0x1, 0x10}, &(0x7f0000ffd000/0x3000)=nil, &(0x7f0000ffc000/0x4000)=nil, &(0x7f00000005c0), &(0x7f0000000600)) (async) openat(0xffffffffffffff9c, &(0x7f0000000180)='./cgroup.cpu/cpuset.cpus\x00', 0x0, 0x0) (async) mmap$IORING_OFF_CQ_RING(&(0x7f0000ee9000/0x3000)=nil, 0x3000, 0x2000002, 0x1010, r3, 0x8000000) (async) syz_io_uring_setup(0x501d, &(0x7f0000000240), &(0x7f0000002000/0x2000)=nil, &(0x7f0000ffd000/0x3000)=nil, &(0x7f0000000100), &(0x7f0000000180)) (async) syz_io_uring_submit(r5, r6, &(0x7f0000000000)=@IORING_OP_READ=@pass_buffer={0x16, 0x0, 0x0, @fd_index=0x5, 0xffffffffffffffff, &(0x7f0000000040)=""/18, 0x12}, 0x0) (async) openat(0xffffffffffffff9c, &(0x7f0000000180)='./cgroup.cpu/cpuset.cpus\x00', 0x0, 0x0) (async) open_by_handle_at(r7, &(0x7f0000000140)=@ceph_nfs_confh={0x10, 0x2, {0x3}}, 0x0) (async) syz_io_uring_setup(0x6c43, &(0x7f00000002c0)={0x0, 0x478a, 0x200, 0x3, 0x2cf, 0x0, r3}, &(0x7f0000003000/0x3000)=nil, &(0x7f0000ffd000/0x1000)=nil, &(0x7f0000000640), &(0x7f00000003c0)) (async) openat$dlm_control(0xffffffffffffff9c, &(0x7f0000000440), 0x408d00, 0x0) (async) syz_io_uring_submit(r4, r8, &(0x7f0000000500)=@IORING_OP_SYMLINKAT={0x26, 0x4, 0x0, r9, &(0x7f0000000480)='./cgroup.cpu/cpuset.cpus\x00', &(0x7f00000004c0)='./cgroup.cpu/cpuset.cpus\x00', 0x0, 0x0, 0x1}, 0xffffd48a) (async) syz_io_uring_submit(r4, r6, &(0x7f00000001c0)=@IORING_OP_UNLINKAT={0x24, 0x2a, 0x0, r7, 0x0, &(0x7f0000000100)='./cgroup.cpu/cpuset.cpus\x00', 0x0, 0x0, 0x1}, 0xf6) (async) open_by_handle_at(r3, &(0x7f0000000140)=ANY=[@ANYBLOB="100000000200000100000000000000000900000000001200"], 0x0) (async) setsockopt$ALG_SET_KEY(r3, 0x117, 0x1, &(0x7f00000000c0)="aaaff31b5e2db2cc1529952606838cbd36bfd4c60cb797262c3f2788575eccbab2d5ba7c85", 0x25) (async) 00:02:51 executing program 3: syz_mount_image$f2fs(&(0x7f0000000000), &(0x7f0000000100)='./file0\x00', 0x4000000, 0x3b, &(0x7f0000000200)=[{&(0x7f0000010ea0)='\x00\x00p\x00'/32, 0x20, 0x8}, {&(0x7f0000010000)="1020f5f201000e00090000000300000010000000090000000100000001000000000000000040000000000000180000001f0000000200000002000000020000000100000018000000000200000002000000060000000a0000000e00000010000003000000010000000200000022557c7f4c464834a18da3b19154b95500000000", 0x80, 0x400}, {&(0x7f0000010080)='\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00%\x00\x00\x00mp\x00\x00\x00\x00\x00\x00wm\x00\x00\x00\x00\x00\x00og\x00\x00\x00\x00\x00\x00jp\x00\x00\x00\x00\x00\x00avi\x00\x00\x00\x00\x00m4v\x00\x00\x00\x00\x00m4p\x00\x00\x00\x00\x00mkv\x00\x00\x00\x00\x00mov\x00\x00\x00\x00\x00webm\x00\x00\x00\x00wav\x00\x00\x00\x00\x00m4a\x00\x00\x00\x00\x003gp\x00\x00\x00\x00\x00opus\x00\x00\x00\x00flac\x00\x00\x00\x00gif\x00\x00\x00\x00\x00png\x00\x00\x00\x00\x00svg\x00\x00\x00\x00\x00webp\x00\x00\x00\x00jar\x00\x00\x00\x00\x00deb\x00\x00\x00\x00\x00iso\x00\x00\x00\x00\x00gz\x00\x00\x00\x00\x00\x00xz\x00\x00\x00\x00\x00\x00zst\x00\x00\x00\x00\x00pdf\x00\x00\x00\x00\x00pyc\x00\x00\x00\x00\x00ttc\x00\x00\x00\x00\x00ttf\x00\x00\x00\x00\x00exe\x00\x00\x00\x00\x00apk\x00\x00\x00\x00\x00cnt\x00\x00\x00\x00\x00exo\x00\x00\x00\x00\x00odex\x00\x00\x00\x00vdex\x00\x00\x00\x00so\x00\x00\x00\x00\x00\x00cold\x00\x00\x00\x00db\x00'/352, 0x160, 0x860}, {&(0x7f00000101e0)='\x00\x00\x00\x00Linux version 5.17.11-1rodete2-amd64 (glinux-team@google.com) (gcc-11 (Debian 11.2.0-20) 11.2.0, GNU ld (GNU Binutils for Debian) 2.38) #1 SMP PREEMPT Debian 5.17.11-1rodete2 (2022-06-09)\x00', 0xc0, 0xa80}, {&(0x7f00000102a0)='\x00\x00\x00\x00Linux version 5.17.11-1rodete2-amd64 (glinux-team@google.com) (gcc-11 (Debian 11.2.0-20) 11.2.0, GNU ld (GNU Binutils for Debian) 2.38) #1 SMP PREEMPT Debian 5.17.11-1rodete2 (2022-06-09)\x00', 0xc0, 0xb80}, {&(0x7f0000000c00)="0000000000000000000000000000005cbed2b6f0e7a58a8ad0ddc32ee9da62a615dbf0437d4dec34afb1b0852b1a76d3cdcaa5753c32edd957aa7568800eed7a797c5087c177754cfaff5ddb3ba6dd084d523b7aa7f159abf6aee38a48b6a15a4d49c5c835739089a09eeb95382ee0d55adf966099243251eeee84cf0a1bd3e5f6482d259789eea5602bf61b38a731250af0921c3c0d585af9fb9e1cead8c42614eb700cda4febba20fe27e55bb9d131c9344fcd2225d1d9e40d58875f4b7bad2826021ffe4e6867b8e1c4", 0xcb, 0xc80}, {&(0x7f0000010380)="00000000000100"/32, 0x20, 0xebd}, {&(0x7f00000103a0)="1020f5f201000e0009000000030000000c000000090000000100000001000000000000000040000000000000180000001f0000000200000002000000020000000100000018000000000200000002000000060000000a0000000e00000010000003000000010000000200000022557c7f4c464834a18da3b19154b95500000000", 0x80, 0x1400}, {&(0x7f0000010420)='\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00%\x00\x00\x00mp\x00\x00\x00\x00\x00\x00wm\x00\x00\x00\x00\x00\x00og\x00\x00\x00\x00\x00\x00jp\x00\x00\x00\x00\x00\x00avi\x00\x00\x00\x00\x00m4v\x00\x00\x00\x00\x00m4p\x00\x00\x00\x00\x00mkv\x00\x00\x00\x00\x00mov\x00\x00\x00\x00\x00webm\x00\x00\x00\x00wav\x00\x00\x00\x00\x00m4a\x00\x00\x00\x00\x003gp\x00\x00\x00\x00\x00opus\x00\x00\x00\x00flac\x00\x00\x00\x00gif\x00\x00\x00\x00\x00png\x00\x00\x00\x00\x00svg\x00\x00\x00\x00\x00webp\x00\x00\x00\x00jar\x00\x00\x00\x00\x00deb\x00\x00\x00\x00\x00iso\x00\x00\x00\x00\x00gz\x00\x00\x00\x00\x00\x00xz\x00\x00\x00\x00\x00\x00zst\x00\x00\x00\x00\x00pdf\x00\x00\x00\x00\x00pyc\x00\x00\x00\x00\x00ttc\x00\x00\x00\x00\x00ttf\x00\x00\x00\x00\x00exe\x00\x00\x00\x00\x00apk\x00\x00\x00\x00\x00cnt\x00\x00\x00\x00\x00exo\x00\x00\x00\x00\x00odex\x00\x00\x00\x00vdex\x00\x00\x00\x00so\x00\x00\x00\x00\x00\x00cold\x00\x00\x00\x00db\x00'/352, 0x160, 0x1860}, {&(0x7f0000010580)='\x00\x00\x00\x00Linux version 5.17.11-1rodete2-amd64 (glinux-team@google.com) (gcc-11 (Debian 11.2.0-20) 11.2.0, GNU ld (GNU Binutils for Debian) 2.38) #1 SMP PREEMPT Debian 5.17.11-1rodete2 (2022-06-09)\x00', 0xc0, 0x1a80}, {&(0x7f0000010640)='\x00\x00\x00\x00Linux version 5.17.11-1rodete2-amd64 (glinux-team@google.com) (gcc-11 (Debian 11.2.0-20) 11.2.0, GNU ld (GNU Binutils for Debian) 2.38) #1 SMP PREEMPT Debian 5.17.11-1rodete2 (2022-06-09)\x00', 0xc0, 0x1b80}, {&(0x7f0000010700)='\x00\x00\x00\x00\b\x00'/32, 0x20, 0x1c80}, {&(0x7f0000010720)="00000000000100"/32, 0x20, 0x1ec0}, {&(0x7f0000010800)="00000000000000000000000000000000000000000000000000000000382c77a20000030000000003000000001000"/64, 0x40, 0x200fe0}, {&(0x7f0000010840)="000000000000000000000000000000000000000000000000000000060000000000020c600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000010000000510ec000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000002000000001400", 0xc0, 0x2011e0}, {&(0x7f0000010900)="000000000000000300000004007800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000500000000080000000000", 0x60, 0x2012e0}, {&(0x7f0000010960)="0000000b000000000400"/32, 0x20, 0x201380}, {&(0x7f0000010980)="00000000000000000000000000000000000000000000030000000000000300000000000008000000000000080000000001000800000000020000000000000000", 0x40, 0x2013e0}, {&(0x7f00000109c0)="03000000000000030000000000000400"/32, 0x20, 0x202000}, {&(0x7f0000000900)="00008c00"/32, 0x20, 0x202e00}, {&(0x7f0000010a00)="000000000000000000000000000000000000000000000000000000010000000005000000000000060000000000000700000000000008000000000000090000000000000800"/96, 0x60, 0x202fe0}, {&(0x7f0000010a80)="0000000000000000000000000000000000000000000000000000000100000000b1da173e0000000000100000000000000b000000000000000d0000001000000012000000000000000100000002000000ffffffffffffffffffffffffffffffffffffffff03000600000000000000000000000000030000000b00000005000000ffffffffffffffffffffffffffffffffffffffff05000000000000000000000000000000c5010000060000000100000007000000070000000a0000004000000040000000fc0f00000100"/224, 0xe0, 0x204fe0}, {&(0x7f0000000180)="00000000000000000000000000000000000000000000000000000000382c77a2", 0x20, 0x205fe0}, {&(0x7f0000010ba0)="0000000000000000feffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00"/96, 0x60, 0x3ff040}, {&(0x7f0000010c00)="b0da173e0000000000100000000000000b000000000000000d0000001000000012000000000000000100000002000000ffffffffffffffffffffffffffffffffffffffff03000600000000000000000000000000030000000b00000005000000ffffffffffffffffffffffffffffffffffffffff05000000000000000000000000000000c5000000060000000100000007000000070000000a0000004000000040000000fc0f00000100"/192, 0xc0, 0x400000}, {&(0x7f0000010cc0)="000000000000000000000000000000000000000000000000000000005e2ecb6b0000030000000003000000001000"/64, 0x40, 0x400fe0}, {&(0x7f0000010d00)="000000000000000000000000000000000000000000000000000000060000000000020c600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000010000000510ec000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000002000000001400", 0xc0, 0x4011e0}, {&(0x7f0000010dc0)="000000000000000300000004007800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000500000000080000000000", 0x60, 0x4012e0}, {&(0x7f0000010e20)="0000000b000000000400"/32, 0x20, 0x401380}, {&(0x7f0000010e40)="00000000000000000000000000000000000000000000030000000000000300000000000008000000000000080000000001000800000000020000000000000000", 0x40, 0x4013e0}, {&(0x7f0000010e80)="01000090738625da01c9e7ddbb1ca81f4527d800000000030000000000060000", 0x20, 0x402000}, {&(0x7f0000010ec0)="000000000000000000000000000000000000000000000000000000010000000005000000000000060000000000000700000000000008000000000000090000000000000800"/96, 0x60, 0x402fe0}, {&(0x7f0000010f20)="0000000000000000000000000000000000000000000000000000000100000000", 0x20, 0x403fe0}, {&(0x7f0000010f40)="0000000000000000000000000000000000000000000000000000000100000000b0da173e0000000000100000000000000b000000000000000d0000001000000012000000000000000100000002000000ffffffffffffffffffffffffffffffffffffffff03000600000000000000000000000000030000000b00000005000000ffffffffffffffffffffffffffffffffffffffff05000000000000000000000000000000c5000000060000000100000007000000070000000a0000004000000040000000fc0f00000100"/224, 0xe0, 0x404fe0}, {&(0x7f0000011020)="000000000000000000000000000000000000000000000000000000005e2ecb6b", 0x20, 0x405fe0}, {&(0x7f0000000140)="b0da8ef35e2ecb6b000000000000000000000000000000000000000000000000a5d99c0d43aee315bf34b14db11d588cc6bc7b", 0x33, 0x5ff000}, {&(0x7f0000011060)="0000000000000000feffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00"/96, 0x60, 0x5ff040}, {&(0x7f0000010740)="b1da173e0000000000100000000000000b000000000000000d0000001000000012000000000000000100000002000000ffffffffffffffffffffffffffffffffffffffff03000600000000000000000000000000030000000b00000005000000ffffffffffffffffffffffffffffffffffffffff05000000000000000000000000000000c5010000060000000100000007000000070000000a0000004000000040000000fc0f00000100"/192, 0xc0, 0xa00000}, {&(0x7f0000011120)="000000000000000000000100000001000000000200000001000000000300000001100000000400000002100000000500000000120000000600000001120000000700000002120000000800000003120000000900000004120000000000000000", 0x60, 0xc00000}, {&(0x7f0000011180)="ed41002080761000535f010003000000001000000000000002000000000000005e1f1f6300000000651f1f6300000000651f1f630000000000000000c9675f30c9675f30000000000100"/96, 0x60, 0x1001000}, {&(0x7f00000111e0)="000000000000000004000000011600"/32, 0x20, 0x1001160}, {&(0x7f0000011200)="0000000000000000030000000300000000000000adda173e0000000002100000ed4100250000000000000000020000007c0d0000000000000100000000000000651f1f6300000000651f1f6300000000651f1f6300000000c9675f30c9675f30c9675f30c76f1e44000000000000000000100000030000000500000066696c653000"/160, 0xa0, 0x1001fe0}, {&(0x7f0000000940)="00000000000000002400000000000000000000000000000000000000000000000000000000000000000cbc7ff08b5305ff15d7a61a574c00000000000000000f00000000000000000000000000000000000000000000000000000000000000000000000400000001000200000000030000000200024a8113ed050000000500018dceceda450600000005000700000000", 0x90, 0x1002160}, {&(0x7f0000011320)='\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00.\x00\x00\x00\x00\x00\x00\x00..\x00\x00\x00\x00\x00\x00file0\x00\x00\x00file1\x00'/64, 0x40, 0x1002960}, {&(0x7f0000000080)="000000000000000004000000040000000000000000000310000021c889933292eab88506c2bf4b219e41586b2ee7e0c3b5dc950e5fe51ed5d17fe4532cc4dda633133cc8325e596aaae7bf8240bdeba0be9e65d43d3b16139a6e1e7481364cab100c31c38db2492eb6b5719ceb4d", 0x6e, 0x1002fe0}, {&(0x7f0000011380)="ed81002b0000000000000000010000001a040000000000000100000000000000651f1f6300000000651f1f6300000000651f1f6300000000c9675f30c9675f30c9675f305ee78c74000000000000000000000000040000000500000066696c653000"/128, 0x80, 0x1200000}, {&(0x7f0000011400)='\x00\x00\x00\x00\x00\x00\x00\x00$\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00syzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkal\x00'/1120, 0x460, 0x1200160}, {&(0x7f0000011860)="0000000000000000050000000500000001000000adda173e0000000001120000ffa1002b00000000000000000100000027000000000000000100000000000000651f1f6300000000651f1f6300000000651f1f6300000000c9675f30c9675f30c9675f30f1689d18000000000000000000000000040000000500000066696c653100"/160, 0xa0, 0x1200fe0}, {&(0x7f0000011900)='\x00\x00\x00\x00\x00\x00\x00\x00$\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00/tmp/syz-imagegen2941961749/file0/file0\x00\x00\x00\x00\x00\x00\x00\x00\x00', 0x60, 0x1201160}, {&(0x7f0000011a00)='\x00\x00\x00\x00\x00\x00\x00\x00$\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00syzkallers\x00\x00\x00\x00\x00\x00', 0x40, 0x1202160}, {&(0x7f0000011a40)="0000000000000000000000001120f5f20100000000000000000000000000000000000000010606007861747472317861747472310106060078617474723278617474723200"/96, 0x60, 0x1202f00}, {&(0x7f0000011aa0)="0000000000000000070000000700000001000000adda173e0000000003120000", 0x20, 0x1202fe0}, {&(0x7f0000011ac0)="ed81012b00000000000000000100000064000000000000000100000000000000651f1f6300000000651f1f6300000000651f1f6300000000c9675f30c9675f30c9675f30559f02d3000000000000000000000000030000000900000066696c652e636f6c6400"/128, 0x80, 0x1203ffc}, {&(0x7f0000011b40)='\x00\x00\x00\x00\x00\x00\x00\x00$\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00syzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallers\x00'/160, 0xa0, 0x1204160}, {&(0x7f0000011be0)="0000000000000000090000000900000001000000adda173e0000000005120000ed81022100000000000000000200000028230000000000000400000000000000651f1f6300000000651f1f6300000000651f1f6300000000c9675f30c9675f30c9675f30b41fa909000000000000000000000000030000000500000066696c653300"/160, 0xa0, 0x1204fe0}, {&(0x7f0000011c80)="02160000030000002400000000000000000000000000000000000000000000000000000000000000000000000216000003160000041600"/64, 0x40, 0x1205160}, {&(0x7f0000011cc0)="0000000000000000080000000800000001000000aeda173eb7c33c1906120000", 0x20, 0x1205fe0}, {&(0x7f0000011ce0)="ff0000000000000000000000000000000000000000000000000000000000000000000300000001000200000000030000000200024a8113ed040000000500028dcece4507000000050001baeed06f0800000005000153bfc55008000000050001120052230900000009000100"/128, 0x80, 0x1601000}, {&(0x7f0000011d60)='\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00.\x00\x00\x00\x00\x00\x00\x00..\x00\x00\x00\x00\x00\x00file0\x00\x00\x00file1\x00\x00\x00file2\x00\x00\x00file3\x00\x00\x00file.cold\x00'/96, 0x60, 0x1601940}], 0x0, &(0x7f00000007c0)=ANY=[@ANYBLOB="00003f10e2d7428f7ff99d98cd1cdc1e2fa50407dbc95739e026b95176c1ba732becc3dddfc7f17060f6312da454cb4a8a8d4042fb51bc0fa9607ec5cbef3456ef2ada10e34603b0c115ab20b4fa4bd6fd3a18b258dff7e760d071cb590bc838aaeb1d9553881cf5e0d603cec2940e27ddf93e7e2a9e39e4b06ba0bc7b365a4e0e5aa57acbe090e4bc0318bf1cba3724282c64acc31060d2e76ba7fca4d49896b879ec7007728c7a"], 0x1) (async) r0 = openat(0xffffffffffffff9c, &(0x7f0000000180)='./cgroup.cpu/cpuset.cpus\x00', 0x0, 0x0) open_by_handle_at(r0, &(0x7f0000000140)=@ceph_nfs_confh={0x10, 0x2, {0x3}}, 0x0) (async) ioctl$BLKDISCARD(r0, 0x1277, &(0x7f0000000040)=0x5) 00:02:51 executing program 4: ioctl$DRM_IOCTL_SYNCOBJ_CREATE(0xffffffffffffffff, 0xc00864bf, &(0x7f0000000000)={0x0, 0x1}) ioctl$DRM_IOCTL_SYNCOBJ_TIMELINE_WAIT(0xffffffffffffffff, 0xc02864ca, &(0x7f00000000c0)={&(0x7f0000000040)=[0x0, r0], &(0x7f0000000080)=[0x5], 0x65a1, 0x2, 0x2}) (async) syz_io_uring_setup(0x20f0, &(0x7f0000000440), &(0x7f0000d64000/0x3000)=nil, &(0x7f0000ef1000/0x1000)=nil, &(0x7f00000004c0), &(0x7f0000000500)) 00:02:51 executing program 0: ioctl$TUNGETIFF(0xffffffffffffffff, 0x800454d2, &(0x7f00000002c0)={'veth1\x00'}) r0 = openat(0xffffffffffffff9c, &(0x7f0000000180)='./cgroup.cpu/cpuset.cpus\x00', 0x0, 0x0) r1 = socket$inet_tcp(0x2, 0x1, 0x0) setsockopt$ARPT_SO_SET_REPLACE(r1, 0x0, 0x60, &(0x7f0000000440)={'filter\x00', 0x11, 0x4, 0x3f0, 0x0, 0x0, 0x200, 0x308, 0x308, 0x308, 0x7fffffe, 0x0, {[{{@arp={@remote, @broadcast, 0x0, 0x0, 0x0, 0x0, {@mac=@link_local={0x2}}, {@mac}, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 'bridge0\x00', 'erspan0\x00'}, 0xc0, 0x100}, @unspec=@RATEEST={0x40, 'RATEEST\x00', 0x0, {'syz1\x00'}}}, {{@uncond, 0xc0, 0x100}, @unspec=@RATEEST={0x40, 'RATEEST\x00', 0x0, {'syz0\x00'}}}, {{@arp={@multicast1, @initdev={0xac, 0x1e, 0x0, 0x0}, 0x0, 0x0, 0x0, 0x0, {@mac=@link_local}, {@mac=@multicast}, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 'veth0_vlan\x00', 'ipvlan1\x00'}, 0xc0, 0x108}, @unspec=@IDLETIMER={0x48, 'IDLETIMER\x00', 0x0, {0x0, 'syz0\x00'}}}], {{'\x00', 0xc0, 0xe8}, {0x28, '\x00', 0x2}}}}, 0x440) open_by_handle_at(r1, &(0x7f0000000980)=@isofs_parent={0x14, 0x2, {0x7, 0x4, 0xff, 0xfffffffc, 0x9, 0x3f67f4e2}}, 0x1815c1) ioctl$TUNGETDEVNETNS(r0, 0x54e3, 0x0) syz_read_part_table(0x0, 0x1, &(0x7f0000001b40)=[{&(0x7f0000000000)="5244534bb0bec2da09ebee962179cae44139b7dfab10c3e84d543636eefc2b807a6fad71bd2420fe39973cfad4c931028e3215397780dac1409a9df0671875b8631296aef610d69438e12430793a9a5d1ced5ae5c8bd9140a8ff8ea745c7b09d2fa46d5eb725102292114d35fbf4e05b8002206d3479929a96065c9c2208385cfa753828f9d5ffefc33e5e131841038d2055e70a109273e59ab489561b3130376bb6c5fc2ed43fa75caf412887e183e85dfe57e522a0ddb5ceb18f44dcd578200e5056702a3e2b32bef36ffec6d87a5937a80fa475a5bad96d230bd82f840a0652856450f4947a5e01043fd6bf482acae1a9faf088904de6a0483c0d871bd321a779dd3b70abdd9325f1780b121c2b5de1817a13f6ea2c6c13ec944c6f91fb13e1edc49165bd243ee42bb09728c88b60ab7d04ca267e568a6f1a5d40cb3ecdb98d783af04cabaf42c0d422c0acda1aa41a3f21304ce9b38501df7b450c7ed4b5741eb020e3326d38a17ee31620506fea0bd45bcc3695afa8042322cfe695e016b6cc8b4c4346ed72ac5126c8aac307a0c3ab69fb0f0c1826fbac349035269829ef3a7b236d3d31cb092cc83e34d5a4cafbcc764dca63f46c32d65142e9afd8e18b21833ebbf55dd6b96d1f973d703100dcb04b1b8569143f4c6ddcfd4c90a1fd9e81cb8f9b9e2a58f38a9415394657eceb00"/512, 0x200}]) syz_read_part_table(0x9, 0x1, &(0x7f0000000280)=[{&(0x7f0000000200)="238ee5b45b82ca9699eff650c4d072e68474af192e897a179e191ec28c1869697874ca2c42e3bf0306393ad7319691ecb66ba5e2a8fa4c3591f95c221483b76b60c121fe9cf62109b377176d29d9c1fe08efdaf8fda56a84", 0x58, 0x20}]) ioctl$TUNGETDEVNETNS(0xffffffffffffffff, 0x54e3, 0x0) syz_read_part_table(0x3, 0x9, &(0x7f0000000880)=[{&(0x7f0000000300)="8b57e59d54f6f2b7e2e6cbc37dd574e361ea2ae3d0fc6d0bf103e459b6de5c1b5b4d6c0e6b1fc6254cd2ce4a372919a9695723aa277ecdb40aca24f884d8a08a204e33a440ccc9f5a4d2c2f1065f206f553ca3877a8dcf77a06db1fe0f04c5fb134c7b93dcc1d9b7eb72", 0x6a, 0x7}, {&(0x7f0000000380)="900e47bfb1db785e648900e304b047a6c7b45b314fa3b1921bd8cce46747f0a69d29f426b663d79f8a4817933321fad50f666d45fdb97a530fae9bf047aa07304cc8c7d5fc38173f174067a5e978af59e93a222877039e81f6a4f4c400e970cfc44c3bbb5df2a2e0a9d0864d3caeed760e95cf197804b208cbe6ee205f8b89f07679c2bbfa5c0688228a46591eca1980864842b94c634f668683", 0x9a, 0x81}, {&(0x7f0000000440)="0a7d72246534e4f4501da90cc82487ab9f070c23d68512706e6650afabe7f98655e2e843a1c4d28232f10c2901def8e50ccbd13f8ac510ef04e4caa7bd159c2fd33b229be3d2c2ce386a1a8f28b28ea9eee808288bee8f810092b4f17d2f37fcb62b0a3b9fee0919087800c9d319b7696d8afc13dc54d2c5d0c9c90497ab1d6dca1263a4e62b72c9fce83c12c2976af201c92d7dccb3e99b096fc88dab6edb1fe118554b045d0de1b1f8e2f349ed764fe95bb55d39c86f63f58a9dd4312480d3121fc8c76ef3dd2969731a17fa49dceb55da1f7eba491348fa1768f1d035", 0xde, 0x6}, {&(0x7f0000000540)="99b89c5ac54133843dac0abb171d7089408eea077b1c6610a290fbbad1ba8d2927858b0c974d48af8e2f6817dccc78bb2bfd7fbb15a5bd4016bb3061a1af204f29e408f3fb70ea367e", 0x49, 0xfffffffffffffffc}, {&(0x7f00000005c0)="128b28e0813d0c0ae1e0834e49549e7966b349e54e55ffa2b2f025c5f30581ae953fa4ad4d7b7a5295", 0x29, 0x8}, {&(0x7f0000000600)="4845605cad0f3fe93da31c7d50570e6e38414222216921f6c4dfe83b3f07dd014c579d7154ea53cb505e3993080776a81c79281d58914e651ee480d041ceea7db2f89fce6adbd92601b8e0bad040be11704862d1f67d8357353600c5d413c2c3c85368a5d2439ce57fb123b5d15ae346", 0x70, 0x8}, {&(0x7f0000000680)="233e03a2b8b1bf090361a67c1c113d0037a35799c1cda345f734a8e405cd727f4c048207f42f5c88c9a733d3802a75504bc4b973bd6f3b83ce1c498cf6071c0dfccaebc5097fad228cb14abb6a031bcbd5e6d5a96654b7ec361804677f856061b0404f0c7f665f576c706ba9f2fa01c4554c9b2de69db0db2296230794ef72014a81bd6e98ea583965a3e55d4dba16a002fe3566b180c9803de1b7acb10c58f73970938505c0f21be0f06b324e4b234719dcd1aaba", 0xb5, 0x77b02439}, {&(0x7f0000000740)="effa239a5c2febd9397755e342ad8143dd0f0ccd88f9cdbd7affb38a54c0e70b1123b7e3ebf5702fc72a78c0629bca973bc1a2c0fcd9b1689488991c32a96aeeb9534ac4865ab7865610bcaacdc326571f1540cdcf357e72f29f6b1544aabdabdc56846fee0dd20152d9e6a1c6f81760f69beedebc516924f82d9cbe70545c99d01ed7d93c85dd2f61f785bca60e0166eae81fc5e58839f735d5ab62235bd351dd71ee28f99c9d51a4d273caa9b20a9d0ebbfc6729efefa0e65777e7c5590aa45551076ce874c7d860aea3ba54dd9f0130b2989a3b10a68336e55ffb030afa2c5b3260d616d2cff36446d5b21c9c42d68b4a93f25c3aa21c2d6b194cb38c58", 0xff, 0x4}, {&(0x7f0000000840)="194232a03a3689bd18b4b2e020e8", 0xe, 0x1f}]) ioctl$TUNGETIFF(0xffffffffffffffff, 0x800454d2, &(0x7f00000002c0)={'veth1\x00'}) (async) openat(0xffffffffffffff9c, &(0x7f0000000180)='./cgroup.cpu/cpuset.cpus\x00', 0x0, 0x0) (async) socket$inet_tcp(0x2, 0x1, 0x0) (async) setsockopt$ARPT_SO_SET_REPLACE(r1, 0x0, 0x60, &(0x7f0000000440)={'filter\x00', 0x11, 0x4, 0x3f0, 0x0, 0x0, 0x200, 0x308, 0x308, 0x308, 0x7fffffe, 0x0, {[{{@arp={@remote, @broadcast, 0x0, 0x0, 0x0, 0x0, {@mac=@link_local={0x2}}, {@mac}, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 'bridge0\x00', 'erspan0\x00'}, 0xc0, 0x100}, @unspec=@RATEEST={0x40, 'RATEEST\x00', 0x0, {'syz1\x00'}}}, {{@uncond, 0xc0, 0x100}, @unspec=@RATEEST={0x40, 'RATEEST\x00', 0x0, {'syz0\x00'}}}, {{@arp={@multicast1, @initdev={0xac, 0x1e, 0x0, 0x0}, 0x0, 0x0, 0x0, 0x0, {@mac=@link_local}, {@mac=@multicast}, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 'veth0_vlan\x00', 'ipvlan1\x00'}, 0xc0, 0x108}, @unspec=@IDLETIMER={0x48, 'IDLETIMER\x00', 0x0, {0x0, 'syz0\x00'}}}], {{'\x00', 0xc0, 0xe8}, {0x28, '\x00', 0x2}}}}, 0x440) (async) open_by_handle_at(r1, &(0x7f0000000980)=@isofs_parent={0x14, 0x2, {0x7, 0x4, 0xff, 0xfffffffc, 0x9, 0x3f67f4e2}}, 0x1815c1) (async) ioctl$TUNGETDEVNETNS(r0, 0x54e3, 0x0) (async) syz_read_part_table(0x0, 0x1, &(0x7f0000001b40)=[{&(0x7f0000000000)="5244534bb0bec2da09ebee962179cae44139b7dfab10c3e84d543636eefc2b807a6fad71bd2420fe39973cfad4c931028e3215397780dac1409a9df0671875b8631296aef610d69438e12430793a9a5d1ced5ae5c8bd9140a8ff8ea745c7b09d2fa46d5eb725102292114d35fbf4e05b8002206d3479929a96065c9c2208385cfa753828f9d5ffefc33e5e131841038d2055e70a109273e59ab489561b3130376bb6c5fc2ed43fa75caf412887e183e85dfe57e522a0ddb5ceb18f44dcd578200e5056702a3e2b32bef36ffec6d87a5937a80fa475a5bad96d230bd82f840a0652856450f4947a5e01043fd6bf482acae1a9faf088904de6a0483c0d871bd321a779dd3b70abdd9325f1780b121c2b5de1817a13f6ea2c6c13ec944c6f91fb13e1edc49165bd243ee42bb09728c88b60ab7d04ca267e568a6f1a5d40cb3ecdb98d783af04cabaf42c0d422c0acda1aa41a3f21304ce9b38501df7b450c7ed4b5741eb020e3326d38a17ee31620506fea0bd45bcc3695afa8042322cfe695e016b6cc8b4c4346ed72ac5126c8aac307a0c3ab69fb0f0c1826fbac349035269829ef3a7b236d3d31cb092cc83e34d5a4cafbcc764dca63f46c32d65142e9afd8e18b21833ebbf55dd6b96d1f973d703100dcb04b1b8569143f4c6ddcfd4c90a1fd9e81cb8f9b9e2a58f38a9415394657eceb00"/512, 0x200}]) (async) syz_read_part_table(0x9, 0x1, &(0x7f0000000280)=[{&(0x7f0000000200)="238ee5b45b82ca9699eff650c4d072e68474af192e897a179e191ec28c1869697874ca2c42e3bf0306393ad7319691ecb66ba5e2a8fa4c3591f95c221483b76b60c121fe9cf62109b377176d29d9c1fe08efdaf8fda56a84", 0x58, 0x20}]) (async) ioctl$TUNGETDEVNETNS(0xffffffffffffffff, 0x54e3, 0x0) (async) syz_read_part_table(0x3, 0x9, &(0x7f0000000880)=[{&(0x7f0000000300)="8b57e59d54f6f2b7e2e6cbc37dd574e361ea2ae3d0fc6d0bf103e459b6de5c1b5b4d6c0e6b1fc6254cd2ce4a372919a9695723aa277ecdb40aca24f884d8a08a204e33a440ccc9f5a4d2c2f1065f206f553ca3877a8dcf77a06db1fe0f04c5fb134c7b93dcc1d9b7eb72", 0x6a, 0x7}, {&(0x7f0000000380)="900e47bfb1db785e648900e304b047a6c7b45b314fa3b1921bd8cce46747f0a69d29f426b663d79f8a4817933321fad50f666d45fdb97a530fae9bf047aa07304cc8c7d5fc38173f174067a5e978af59e93a222877039e81f6a4f4c400e970cfc44c3bbb5df2a2e0a9d0864d3caeed760e95cf197804b208cbe6ee205f8b89f07679c2bbfa5c0688228a46591eca1980864842b94c634f668683", 0x9a, 0x81}, {&(0x7f0000000440)="0a7d72246534e4f4501da90cc82487ab9f070c23d68512706e6650afabe7f98655e2e843a1c4d28232f10c2901def8e50ccbd13f8ac510ef04e4caa7bd159c2fd33b229be3d2c2ce386a1a8f28b28ea9eee808288bee8f810092b4f17d2f37fcb62b0a3b9fee0919087800c9d319b7696d8afc13dc54d2c5d0c9c90497ab1d6dca1263a4e62b72c9fce83c12c2976af201c92d7dccb3e99b096fc88dab6edb1fe118554b045d0de1b1f8e2f349ed764fe95bb55d39c86f63f58a9dd4312480d3121fc8c76ef3dd2969731a17fa49dceb55da1f7eba491348fa1768f1d035", 0xde, 0x6}, {&(0x7f0000000540)="99b89c5ac54133843dac0abb171d7089408eea077b1c6610a290fbbad1ba8d2927858b0c974d48af8e2f6817dccc78bb2bfd7fbb15a5bd4016bb3061a1af204f29e408f3fb70ea367e", 0x49, 0xfffffffffffffffc}, {&(0x7f00000005c0)="128b28e0813d0c0ae1e0834e49549e7966b349e54e55ffa2b2f025c5f30581ae953fa4ad4d7b7a5295", 0x29, 0x8}, {&(0x7f0000000600)="4845605cad0f3fe93da31c7d50570e6e38414222216921f6c4dfe83b3f07dd014c579d7154ea53cb505e3993080776a81c79281d58914e651ee480d041ceea7db2f89fce6adbd92601b8e0bad040be11704862d1f67d8357353600c5d413c2c3c85368a5d2439ce57fb123b5d15ae346", 0x70, 0x8}, {&(0x7f0000000680)="233e03a2b8b1bf090361a67c1c113d0037a35799c1cda345f734a8e405cd727f4c048207f42f5c88c9a733d3802a75504bc4b973bd6f3b83ce1c498cf6071c0dfccaebc5097fad228cb14abb6a031bcbd5e6d5a96654b7ec361804677f856061b0404f0c7f665f576c706ba9f2fa01c4554c9b2de69db0db2296230794ef72014a81bd6e98ea583965a3e55d4dba16a002fe3566b180c9803de1b7acb10c58f73970938505c0f21be0f06b324e4b234719dcd1aaba", 0xb5, 0x77b02439}, {&(0x7f0000000740)="effa239a5c2febd9397755e342ad8143dd0f0ccd88f9cdbd7affb38a54c0e70b1123b7e3ebf5702fc72a78c0629bca973bc1a2c0fcd9b1689488991c32a96aeeb9534ac4865ab7865610bcaacdc326571f1540cdcf357e72f29f6b1544aabdabdc56846fee0dd20152d9e6a1c6f81760f69beedebc516924f82d9cbe70545c99d01ed7d93c85dd2f61f785bca60e0166eae81fc5e58839f735d5ab62235bd351dd71ee28f99c9d51a4d273caa9b20a9d0ebbfc6729efefa0e65777e7c5590aa45551076ce874c7d860aea3ba54dd9f0130b2989a3b10a68336e55ffb030afa2c5b3260d616d2cff36446d5b21c9c42d68b4a93f25c3aa21c2d6b194cb38c58", 0xff, 0x4}, {&(0x7f0000000840)="194232a03a3689bd18b4b2e020e8", 0xe, 0x1f}]) (async) 00:02:51 executing program 1: prlimit64(0x0, 0xe, &(0x7f0000000040)={0x7, 0x8b}, 0x0) sched_setscheduler(0x0, 0x1, &(0x7f0000000080)=0x7) r0 = getpid() sched_setscheduler(r0, 0x2, &(0x7f0000000200)=0x4) socketpair$unix(0x1, 0x2, 0x0, &(0x7f0000000200)={0xffffffffffffffff, 0xffffffffffffffff}) connect$unix(r1, &(0x7f0000000180)=@abs, 0x6e) sendmmsg$unix(r2, &(0x7f00000bd000), 0x318, 0x0) recvmmsg(r1, &(0x7f00000000c0), 0x10106, 0x2, 0x0) r3 = openat(0xffffffffffffff9c, &(0x7f000000c380)='./file0\x00', 0x20842, 0x110) writev(r3, &(0x7f0000000000)=[{&(0x7f0000000cc0)="e1", 0x5603d}], 0x1) connect$unix(r1, &(0x7f0000000380)=@file={0x1, './file0\x00'}, 0x6e) connect$unix(0xffffffffffffffff, &(0x7f0000000440)=@file={0x0, './file0\x00'}, 0x6e) fdatasync(r3) connect$unix(0xffffffffffffffff, &(0x7f00000002c0)=@file={0x0, './file0\x00'}, 0x6e) getsockname$packet(0xffffffffffffffff, &(0x7f0000000580)={0x11, 0x0, 0x0, 0x1, 0x0, 0x6, @broadcast}, 0x0) timer_create(0x2, &(0x7f00000004c0)={0x0, 0x0, 0x2}, &(0x7f0000000500)) sendmsg$nl_route(0xffffffffffffffff, &(0x7f0000000280)={&(0x7f0000000100)={0x10, 0x0, 0x0, 0x1000}, 0xc, &(0x7f0000000240)={&(0x7f0000000600)=ANY=[@ANYBLOB="1400100029844b2c4159af2941769cf5ac2facb6689a61ee004e109ff5366e1585711a0a4547a1de308836e39ce2388a174d78d8babf29d0de15b253d23ca68bd9cd7e38d1b4676aac775aeb51684ef6953eb77b78eb419899a6293bf4e4bf6b00020d4cfd4accedc04db4f0dc0b83c4546507dce73ed65936f42098407880f7ad75a249b844111e10518e6f9e8a1231d152b858b38e16be8b023d0a171e88180fb510225b817fc5339133624ec8a3"], 0x14}, 0x1, 0x0, 0x0, 0x4004c}, 0x8040) mmap(&(0x7f0000ffa000/0x3000)=nil, 0x3000, 0x2000000, 0x40010, 0xffffffffffffffff, 0x3e46a000) fcntl$lock(r1, 0x5, &(0x7f0000000340)={0x0, 0x4, 0x6, 0x1, r0}) truncate(&(0x7f00000000c0)='./file0\x00', 0x0) prlimit64(0x0, 0xe, &(0x7f0000000040)={0x7, 0x8b}, 0x0) (async) sched_setscheduler(0x0, 0x1, &(0x7f0000000080)=0x7) (async) getpid() (async) sched_setscheduler(r0, 0x2, &(0x7f0000000200)=0x4) (async) socketpair$unix(0x1, 0x2, 0x0, &(0x7f0000000200)) (async) connect$unix(r1, &(0x7f0000000180)=@abs, 0x6e) (async) sendmmsg$unix(r2, &(0x7f00000bd000), 0x318, 0x0) (async) recvmmsg(r1, &(0x7f00000000c0), 0x10106, 0x2, 0x0) (async) openat(0xffffffffffffff9c, &(0x7f000000c380)='./file0\x00', 0x20842, 0x110) (async) writev(r3, &(0x7f0000000000)=[{&(0x7f0000000cc0)="e1", 0x5603d}], 0x1) (async) connect$unix(r1, &(0x7f0000000380)=@file={0x1, './file0\x00'}, 0x6e) (async) connect$unix(0xffffffffffffffff, &(0x7f0000000440)=@file={0x0, './file0\x00'}, 0x6e) (async) fdatasync(r3) (async) connect$unix(0xffffffffffffffff, &(0x7f00000002c0)=@file={0x0, './file0\x00'}, 0x6e) (async) getsockname$packet(0xffffffffffffffff, &(0x7f0000000580)={0x11, 0x0, 0x0, 0x1, 0x0, 0x6, @broadcast}, 0x0) (async) timer_create(0x2, &(0x7f00000004c0)={0x0, 0x0, 0x2}, &(0x7f0000000500)) (async) sendmsg$nl_route(0xffffffffffffffff, &(0x7f0000000280)={&(0x7f0000000100)={0x10, 0x0, 0x0, 0x1000}, 0xc, &(0x7f0000000240)={&(0x7f0000000600)=ANY=[@ANYBLOB="1400100029844b2c4159af2941769cf5ac2facb6689a61ee004e109ff5366e1585711a0a4547a1de308836e39ce2388a174d78d8babf29d0de15b253d23ca68bd9cd7e38d1b4676aac775aeb51684ef6953eb77b78eb419899a6293bf4e4bf6b00020d4cfd4accedc04db4f0dc0b83c4546507dce73ed65936f42098407880f7ad75a249b844111e10518e6f9e8a1231d152b858b38e16be8b023d0a171e88180fb510225b817fc5339133624ec8a3"], 0x14}, 0x1, 0x0, 0x0, 0x4004c}, 0x8040) (async) mmap(&(0x7f0000ffa000/0x3000)=nil, 0x3000, 0x2000000, 0x40010, 0xffffffffffffffff, 0x3e46a000) (async) fcntl$lock(r1, 0x5, &(0x7f0000000340)={0x0, 0x4, 0x6, 0x1, r0}) (async) truncate(&(0x7f00000000c0)='./file0\x00', 0x0) (async) [ 171.914090][ T4355] loop0: detected capacity change from 0 to 1 [ 171.924276][ T4357] loop3: detected capacity change from 0 to 131072 00:02:51 executing program 4: ioctl$DRM_IOCTL_SYNCOBJ_CREATE(0xffffffffffffffff, 0xc00864bf, &(0x7f0000000000)={0x0, 0x1}) ioctl$DRM_IOCTL_SYNCOBJ_TIMELINE_WAIT(0xffffffffffffffff, 0xc02864ca, &(0x7f00000000c0)={&(0x7f0000000040)=[0x0, r0], &(0x7f0000000080)=[0x5], 0x65a1, 0x2, 0x2}) (async) syz_io_uring_setup(0x20f0, &(0x7f0000000440), &(0x7f0000d64000/0x3000)=nil, &(0x7f0000ef1000/0x1000)=nil, &(0x7f00000004c0), &(0x7f0000000500)) [ 171.943560][ T4357] F2FS-fs (loop3): Invalid log_blocksize (16), supports only 12 [ 171.946531][ T4357] F2FS-fs (loop3): Can't find valid F2FS filesystem in 1th superblock [ 171.953315][ T4357] F2FS-fs (loop3): invalid crc_offset: 0 00:02:51 executing program 5: write$UHID_DESTROY(0xffffffffffffffff, &(0x7f0000000000), 0x4) r0 = syz_open_dev$sndctrl(&(0x7f0000000300), 0x0, 0x0) ioctl$SNDRV_CTL_IOCTL_ELEM_REMOVE(r0, 0xc0405519, &(0x7f0000000340)) (async) r1 = openat2(0xffffffffffffff9c, &(0x7f0000000040)='./file0\x00', &(0x7f0000000080)={0x22040, 0x8, 0x8}, 0x18) ioctl$SNDRV_CTL_IOCTL_POWER_STATE(r1, 0x800455d1, &(0x7f00000000c0)) 00:02:51 executing program 4: r0 = socket$inet_udplite(0x2, 0x2, 0x88) sendmmsg$inet(r0, &(0x7f00000059c0)=[{{&(0x7f0000000180)={0x2, 0x4e23, @dev}, 0x10, 0x0}}, {{&(0x7f0000000340)={0x2, 0x4e24, @remote}, 0x10, 0x0, 0x0, &(0x7f0000000640)=[@ip_retopts={{0x14, 0x0, 0x7, {[@generic={0x44, 0x2}]}}}], 0x18}}], 0x2, 0x0) 00:02:52 executing program 2: socket$alg(0x26, 0x5, 0x0) (async, rerun: 32) r0 = syz_io_uring_setup(0x2c00, &(0x7f0000000340), &(0x7f0000ee9000/0x1000)=nil, &(0x7f0000ffc000/0x2000)=nil, &(0x7f0000000000)=0x0, &(0x7f0000000040)=0x0) (rerun: 32) syz_io_uring_submit(r1, r2, &(0x7f0000000200)=@IORING_OP_POLL_ADD={0x6, 0x0, 0x0, @fd_index=0x3, 0x0, 0x0, 0x0, {}, 0x1}, 0x0) (async, rerun: 64) syz_io_uring_submit(r1, r2, &(0x7f0000000080), 0x8) (async, rerun: 64) io_uring_enter(r0, 0x90e, 0x0, 0x0, 0x0, 0x0) (async) syz_io_uring_setup(0x3028, &(0x7f0000000540)={0x0, 0x110b, 0x18, 0x1, 0x10}, &(0x7f0000ffd000/0x3000)=nil, &(0x7f0000ffc000/0x4000)=nil, &(0x7f00000005c0), &(0x7f0000000600)) (async) r3 = openat(0xffffffffffffff9c, &(0x7f0000000180)='./cgroup.cpu/cpuset.cpus\x00', 0x0, 0x0) r4 = mmap$IORING_OFF_CQ_RING(&(0x7f0000ee9000/0x3000)=nil, 0x3000, 0x2000002, 0x1010, r3, 0x8000000) (async) syz_io_uring_setup(0x501d, &(0x7f0000000240), &(0x7f0000002000/0x2000)=nil, &(0x7f0000ffd000/0x3000)=nil, &(0x7f0000000100)=0x0, &(0x7f0000000180)=0x0) syz_io_uring_submit(r5, r6, &(0x7f0000000000)=@IORING_OP_READ=@pass_buffer={0x16, 0x0, 0x0, @fd_index=0x5, 0xffffffffffffffff, &(0x7f0000000040)=""/18, 0x12}, 0x0) (async, rerun: 64) r7 = openat(0xffffffffffffff9c, &(0x7f0000000180)='./cgroup.cpu/cpuset.cpus\x00', 0x0, 0x0) (rerun: 64) open_by_handle_at(r7, &(0x7f0000000140)=@ceph_nfs_confh={0x10, 0x2, {0x3}}, 0x0) (async) syz_io_uring_setup(0x6c43, &(0x7f00000002c0)={0x0, 0x478a, 0x200, 0x3, 0x2cf, 0x0, r3}, &(0x7f0000003000/0x3000)=nil, &(0x7f0000ffd000/0x1000)=nil, &(0x7f0000000640), &(0x7f00000003c0)=0x0) r9 = openat$dlm_control(0xffffffffffffff9c, &(0x7f0000000440), 0x408d00, 0x0) syz_io_uring_submit(r4, r8, &(0x7f0000000500)=@IORING_OP_SYMLINKAT={0x26, 0x4, 0x0, r9, &(0x7f0000000480)='./cgroup.cpu/cpuset.cpus\x00', &(0x7f00000004c0)='./cgroup.cpu/cpuset.cpus\x00', 0x0, 0x0, 0x1}, 0xffffd48a) (async) syz_io_uring_submit(r4, r6, &(0x7f00000001c0)=@IORING_OP_UNLINKAT={0x24, 0x2a, 0x0, r7, 0x0, &(0x7f0000000100)='./cgroup.cpu/cpuset.cpus\x00', 0x0, 0x0, 0x1}, 0xf6) (async) open_by_handle_at(r3, &(0x7f0000000140)=ANY=[@ANYBLOB="100000000200000100000000000000000900000000001200"], 0x0) (async, rerun: 32) setsockopt$ALG_SET_KEY(r3, 0x117, 0x1, &(0x7f00000000c0)="aaaff31b5e2db2cc1529952606838cbd36bfd4c60cb797262c3f2788575eccbab2d5ba7c85", 0x25) (rerun: 32) 00:02:52 executing program 5: write$UHID_DESTROY(0xffffffffffffffff, &(0x7f0000000000), 0x4) r0 = syz_open_dev$sndctrl(&(0x7f0000000300), 0x0, 0x0) ioctl$SNDRV_CTL_IOCTL_ELEM_REMOVE(r0, 0xc0405519, &(0x7f0000000340)) r1 = openat2(0xffffffffffffff9c, &(0x7f0000000040)='./file0\x00', &(0x7f0000000080)={0x22040, 0x8, 0x8}, 0x18) ioctl$SNDRV_CTL_IOCTL_POWER_STATE(r1, 0x800455d1, &(0x7f00000000c0)) write$UHID_DESTROY(0xffffffffffffffff, &(0x7f0000000000), 0x4) (async) syz_open_dev$sndctrl(&(0x7f0000000300), 0x0, 0x0) (async) ioctl$SNDRV_CTL_IOCTL_ELEM_REMOVE(r0, 0xc0405519, &(0x7f0000000340)) (async) openat2(0xffffffffffffff9c, &(0x7f0000000040)='./file0\x00', &(0x7f0000000080)={0x22040, 0x8, 0x8}, 0x18) (async) ioctl$SNDRV_CTL_IOCTL_POWER_STATE(r1, 0x800455d1, &(0x7f00000000c0)) (async) [ 172.174666][ T4357] F2FS-fs (loop3): Disable nat_bits due to incorrect cp_ver (7767352964634106544, 8589934608) [ 172.177440][ T4355] Dev loop0: RDB in block 0 has bad checksum [ 172.190547][ T4355] Dev loop0: unable to read RDB block 1 [ 172.194358][ T4355] loop0: unable to read partition table [ 172.197860][ T4357] F2FS-fs (loop3): NAT is corrupt, run fsck to fix it [ 172.204626][ T4355] loop0: partition table beyond EOD, truncated [ 172.210856][ T4357] F2FS-fs (loop3): Failed to initialize F2FS node manager (-22) [ 172.212750][ T4355] loop_reread_partitions: partition scan of loop0 () failed (rc=-5) 00:02:52 executing program 4: r0 = socket$inet_udplite(0x2, 0x2, 0x88) sendmmsg$inet(r0, &(0x7f00000059c0)=[{{&(0x7f0000000180)={0x2, 0x4e23, @dev}, 0x10, 0x0}}, {{&(0x7f0000000340)={0x2, 0x4e24, @remote}, 0x10, 0x0, 0x0, &(0x7f0000000640)=[@ip_retopts={{0x14, 0x0, 0x7, {[@generic={0x44, 0x2}]}}}], 0x18}}], 0x2, 0x0) 00:02:52 executing program 5: prlimit64(0x0, 0xe, &(0x7f0000000140)={0x8, 0x8b}, 0x0) sched_setscheduler(0x0, 0x2, &(0x7f0000000080)=0x6) sched_setaffinity(0x0, 0x8, &(0x7f00000000c0)=0x5) r0 = getpid() sched_setscheduler(r0, 0x1, &(0x7f0000001700)=0x4) socketpair$unix(0x1, 0x2, 0x0, &(0x7f0000000200)={0xffffffffffffffff, 0xffffffffffffffff}) connect$unix(r1, &(0x7f000057eff8)=@abs, 0x6e) sendmmsg$unix(r2, &(0x7f00000bd000), 0x318, 0x0) recvmmsg(r1, &(0x7f00000000c0), 0x10106, 0x2, 0x0) clock_gettime(0x0, &(0x7f00000001c0)={0x0, 0x0}) utimensat(0xffffffffffffffff, &(0x7f0000000040)='./file0\x00', &(0x7f0000000280)={{0x77359400}, {r3, r4/1000+60000}}, 0x100) getpgid(r0) r5 = getpid() sched_setscheduler(r5, 0x1, &(0x7f0000000240)=0x1) sched_setattr(r5, &(0x7f0000000000)={0x38}, 0x0) openat2(0xffffffffffffffff, &(0x7f0000000180)='./file0\x00', &(0x7f00000003c0)={0x480202, 0x0, 0x5}, 0x18) connect$unix(0xffffffffffffffff, &(0x7f0000000b80)=@file={0x29ecd5f5c6164ce7, './file0\x00'}, 0x6e) r6 = openat$cgroup_ro(0xffffffffffffff9c, &(0x7f0000000080)='cgroup.controllers\x00', 0x275a, 0x0) write$binfmt_script(r6, &(0x7f0000000240)=ANY=[], 0xfea7) ioctl$FS_IOC_RESVSP(r6, 0x40305829, &(0x7f0000000100)={0x0, 0x0, 0x0, 0xd001}) 00:02:52 executing program 4: r0 = socket$inet_udplite(0x2, 0x2, 0x88) sendmmsg$inet(r0, &(0x7f00000059c0)=[{{&(0x7f0000000180)={0x2, 0x4e23, @dev}, 0x10, 0x0}}, {{&(0x7f0000000340)={0x2, 0x4e24, @remote}, 0x10, 0x0, 0x0, &(0x7f0000000640)=[@ip_retopts={{0x14, 0x0, 0x7, {[@generic={0x44, 0x2}]}}}], 0x18}}], 0x2, 0x0) socket$inet_udplite(0x2, 0x2, 0x88) (async) sendmmsg$inet(r0, &(0x7f00000059c0)=[{{&(0x7f0000000180)={0x2, 0x4e23, @dev}, 0x10, 0x0}}, {{&(0x7f0000000340)={0x2, 0x4e24, @remote}, 0x10, 0x0, 0x0, &(0x7f0000000640)=[@ip_retopts={{0x14, 0x0, 0x7, {[@generic={0x44, 0x2}]}}}], 0x18}}], 0x2, 0x0) (async) [ 172.389596][ T2561] Dev loop0: RDB in block 0 has bad checksum [ 172.391182][ T2561] Dev loop0: unable to read RDB block 1 [ 172.392400][ T2561] loop0: unable to read partition table [ 172.393660][ T2561] loop0: partition table beyond EOD, truncated 00:02:52 executing program 3: syz_mount_image$f2fs(&(0x7f0000000000), &(0x7f0000000100)='./file0\x00', 0x4000000, 0x3b, &(0x7f0000000200)=[{&(0x7f0000010ea0)='\x00\x00p\x00'/32, 0x20, 0x8}, {&(0x7f0000010000)="1020f5f201000e00090000000300000010000000090000000100000001000000000000000040000000000000180000001f0000000200000002000000020000000100000018000000000200000002000000060000000a0000000e00000010000003000000010000000200000022557c7f4c464834a18da3b19154b95500000000", 0x80, 0x400}, {&(0x7f0000010080)='\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00%\x00\x00\x00mp\x00\x00\x00\x00\x00\x00wm\x00\x00\x00\x00\x00\x00og\x00\x00\x00\x00\x00\x00jp\x00\x00\x00\x00\x00\x00avi\x00\x00\x00\x00\x00m4v\x00\x00\x00\x00\x00m4p\x00\x00\x00\x00\x00mkv\x00\x00\x00\x00\x00mov\x00\x00\x00\x00\x00webm\x00\x00\x00\x00wav\x00\x00\x00\x00\x00m4a\x00\x00\x00\x00\x003gp\x00\x00\x00\x00\x00opus\x00\x00\x00\x00flac\x00\x00\x00\x00gif\x00\x00\x00\x00\x00png\x00\x00\x00\x00\x00svg\x00\x00\x00\x00\x00webp\x00\x00\x00\x00jar\x00\x00\x00\x00\x00deb\x00\x00\x00\x00\x00iso\x00\x00\x00\x00\x00gz\x00\x00\x00\x00\x00\x00xz\x00\x00\x00\x00\x00\x00zst\x00\x00\x00\x00\x00pdf\x00\x00\x00\x00\x00pyc\x00\x00\x00\x00\x00ttc\x00\x00\x00\x00\x00ttf\x00\x00\x00\x00\x00exe\x00\x00\x00\x00\x00apk\x00\x00\x00\x00\x00cnt\x00\x00\x00\x00\x00exo\x00\x00\x00\x00\x00odex\x00\x00\x00\x00vdex\x00\x00\x00\x00so\x00\x00\x00\x00\x00\x00cold\x00\x00\x00\x00db\x00'/352, 0x160, 0x860}, {&(0x7f00000101e0)='\x00\x00\x00\x00Linux version 5.17.11-1rodete2-amd64 (glinux-team@google.com) (gcc-11 (Debian 11.2.0-20) 11.2.0, GNU ld (GNU Binutils for Debian) 2.38) #1 SMP PREEMPT Debian 5.17.11-1rodete2 (2022-06-09)\x00', 0xc0, 0xa80}, {&(0x7f00000102a0)='\x00\x00\x00\x00Linux version 5.17.11-1rodete2-amd64 (glinux-team@google.com) (gcc-11 (Debian 11.2.0-20) 11.2.0, GNU ld (GNU Binutils for Debian) 2.38) #1 SMP PREEMPT Debian 5.17.11-1rodete2 (2022-06-09)\x00', 0xc0, 0xb80}, {&(0x7f0000000c00)="0000000000000000000000000000005cbed2b6f0e7a58a8ad0ddc32ee9da62a615dbf0437d4dec34afb1b0852b1a76d3cdcaa5753c32edd957aa7568800eed7a797c5087c177754cfaff5ddb3ba6dd084d523b7aa7f159abf6aee38a48b6a15a4d49c5c835739089a09eeb95382ee0d55adf966099243251eeee84cf0a1bd3e5f6482d259789eea5602bf61b38a731250af0921c3c0d585af9fb9e1cead8c42614eb700cda4febba20fe27e55bb9d131c9344fcd2225d1d9e40d58875f4b7bad2826021ffe4e6867b8e1c4", 0xcb, 0xc80}, {&(0x7f0000010380)="00000000000100"/32, 0x20, 0xebd}, {&(0x7f00000103a0)="1020f5f201000e0009000000030000000c000000090000000100000001000000000000000040000000000000180000001f0000000200000002000000020000000100000018000000000200000002000000060000000a0000000e00000010000003000000010000000200000022557c7f4c464834a18da3b19154b95500000000", 0x80, 0x1400}, {&(0x7f0000010420)='\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00%\x00\x00\x00mp\x00\x00\x00\x00\x00\x00wm\x00\x00\x00\x00\x00\x00og\x00\x00\x00\x00\x00\x00jp\x00\x00\x00\x00\x00\x00avi\x00\x00\x00\x00\x00m4v\x00\x00\x00\x00\x00m4p\x00\x00\x00\x00\x00mkv\x00\x00\x00\x00\x00mov\x00\x00\x00\x00\x00webm\x00\x00\x00\x00wav\x00\x00\x00\x00\x00m4a\x00\x00\x00\x00\x003gp\x00\x00\x00\x00\x00opus\x00\x00\x00\x00flac\x00\x00\x00\x00gif\x00\x00\x00\x00\x00png\x00\x00\x00\x00\x00svg\x00\x00\x00\x00\x00webp\x00\x00\x00\x00jar\x00\x00\x00\x00\x00deb\x00\x00\x00\x00\x00iso\x00\x00\x00\x00\x00gz\x00\x00\x00\x00\x00\x00xz\x00\x00\x00\x00\x00\x00zst\x00\x00\x00\x00\x00pdf\x00\x00\x00\x00\x00pyc\x00\x00\x00\x00\x00ttc\x00\x00\x00\x00\x00ttf\x00\x00\x00\x00\x00exe\x00\x00\x00\x00\x00apk\x00\x00\x00\x00\x00cnt\x00\x00\x00\x00\x00exo\x00\x00\x00\x00\x00odex\x00\x00\x00\x00vdex\x00\x00\x00\x00so\x00\x00\x00\x00\x00\x00cold\x00\x00\x00\x00db\x00'/352, 0x160, 0x1860}, {&(0x7f0000010580)='\x00\x00\x00\x00Linux version 5.17.11-1rodete2-amd64 (glinux-team@google.com) (gcc-11 (Debian 11.2.0-20) 11.2.0, GNU ld (GNU Binutils for Debian) 2.38) #1 SMP PREEMPT Debian 5.17.11-1rodete2 (2022-06-09)\x00', 0xc0, 0x1a80}, {&(0x7f0000010640)='\x00\x00\x00\x00Linux version 5.17.11-1rodete2-amd64 (glinux-team@google.com) (gcc-11 (Debian 11.2.0-20) 11.2.0, GNU ld (GNU Binutils for Debian) 2.38) #1 SMP PREEMPT Debian 5.17.11-1rodete2 (2022-06-09)\x00', 0xc0, 0x1b80}, {&(0x7f0000010700)='\x00\x00\x00\x00\b\x00'/32, 0x20, 0x1c80}, {&(0x7f0000010720)="00000000000100"/32, 0x20, 0x1ec0}, {&(0x7f0000010800)="00000000000000000000000000000000000000000000000000000000382c77a20000030000000003000000001000"/64, 0x40, 0x200fe0}, {&(0x7f0000010840)="000000000000000000000000000000000000000000000000000000060000000000020c600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000010000000510ec000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000002000000001400", 0xc0, 0x2011e0}, {&(0x7f0000010900)="000000000000000300000004007800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000500000000080000000000", 0x60, 0x2012e0}, {&(0x7f0000010960)="0000000b000000000400"/32, 0x20, 0x201380}, {&(0x7f0000010980)="00000000000000000000000000000000000000000000030000000000000300000000000008000000000000080000000001000800000000020000000000000000", 0x40, 0x2013e0}, {&(0x7f00000109c0)="03000000000000030000000000000400"/32, 0x20, 0x202000}, {&(0x7f0000000900)="00008c00"/32, 0x20, 0x202e00}, {&(0x7f0000010a00)="000000000000000000000000000000000000000000000000000000010000000005000000000000060000000000000700000000000008000000000000090000000000000800"/96, 0x60, 0x202fe0}, {&(0x7f0000010a80)="0000000000000000000000000000000000000000000000000000000100000000b1da173e0000000000100000000000000b000000000000000d0000001000000012000000000000000100000002000000ffffffffffffffffffffffffffffffffffffffff03000600000000000000000000000000030000000b00000005000000ffffffffffffffffffffffffffffffffffffffff05000000000000000000000000000000c5010000060000000100000007000000070000000a0000004000000040000000fc0f00000100"/224, 0xe0, 0x204fe0}, {&(0x7f0000000180)="00000000000000000000000000000000000000000000000000000000382c77a2", 0x20, 0x205fe0}, {&(0x7f0000010ba0)="0000000000000000feffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00"/96, 0x60, 0x3ff040}, {&(0x7f0000010c00)="b0da173e0000000000100000000000000b000000000000000d0000001000000012000000000000000100000002000000ffffffffffffffffffffffffffffffffffffffff03000600000000000000000000000000030000000b00000005000000ffffffffffffffffffffffffffffffffffffffff05000000000000000000000000000000c5000000060000000100000007000000070000000a0000004000000040000000fc0f00000100"/192, 0xc0, 0x400000}, {&(0x7f0000010cc0)="000000000000000000000000000000000000000000000000000000005e2ecb6b0000030000000003000000001000"/64, 0x40, 0x400fe0}, {&(0x7f0000010d00)="000000000000000000000000000000000000000000000000000000060000000000020c600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000010000000510ec000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000002000000001400", 0xc0, 0x4011e0}, {&(0x7f0000010dc0)="000000000000000300000004007800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000500000000080000000000", 0x60, 0x4012e0}, {&(0x7f0000010e20)="0000000b000000000400"/32, 0x20, 0x401380}, {&(0x7f0000010e40)="00000000000000000000000000000000000000000000030000000000000300000000000008000000000000080000000001000800000000020000000000000000", 0x40, 0x4013e0}, {&(0x7f0000010e80)="01000090738625da01c9e7ddbb1ca81f4527d800000000030000000000060000", 0x20, 0x402000}, {&(0x7f0000010ec0)="000000000000000000000000000000000000000000000000000000010000000005000000000000060000000000000700000000000008000000000000090000000000000800"/96, 0x60, 0x402fe0}, {&(0x7f0000010f20)="0000000000000000000000000000000000000000000000000000000100000000", 0x20, 0x403fe0}, {&(0x7f0000010f40)="0000000000000000000000000000000000000000000000000000000100000000b0da173e0000000000100000000000000b000000000000000d0000001000000012000000000000000100000002000000ffffffffffffffffffffffffffffffffffffffff03000600000000000000000000000000030000000b00000005000000ffffffffffffffffffffffffffffffffffffffff05000000000000000000000000000000c5000000060000000100000007000000070000000a0000004000000040000000fc0f00000100"/224, 0xe0, 0x404fe0}, {&(0x7f0000011020)="000000000000000000000000000000000000000000000000000000005e2ecb6b", 0x20, 0x405fe0}, {&(0x7f0000000140)="b0da8ef35e2ecb6b000000000000000000000000000000000000000000000000a5d99c0d43aee315bf34b14db11d588cc6bc7b", 0x33, 0x5ff000}, {&(0x7f0000011060)="0000000000000000feffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00"/96, 0x60, 0x5ff040}, {&(0x7f0000010740)="b1da173e0000000000100000000000000b000000000000000d0000001000000012000000000000000100000002000000ffffffffffffffffffffffffffffffffffffffff03000600000000000000000000000000030000000b00000005000000ffffffffffffffffffffffffffffffffffffffff05000000000000000000000000000000c5010000060000000100000007000000070000000a0000004000000040000000fc0f00000100"/192, 0xc0, 0xa00000}, {&(0x7f0000011120)="000000000000000000000100000001000000000200000001000000000300000001100000000400000002100000000500000000120000000600000001120000000700000002120000000800000003120000000900000004120000000000000000", 0x60, 0xc00000}, {&(0x7f0000011180)="ed41002080761000535f010003000000001000000000000002000000000000005e1f1f6300000000651f1f6300000000651f1f630000000000000000c9675f30c9675f30000000000100"/96, 0x60, 0x1001000}, {&(0x7f00000111e0)="000000000000000004000000011600"/32, 0x20, 0x1001160}, {&(0x7f0000011200)="0000000000000000030000000300000000000000adda173e0000000002100000ed4100250000000000000000020000007c0d0000000000000100000000000000651f1f6300000000651f1f6300000000651f1f6300000000c9675f30c9675f30c9675f30c76f1e44000000000000000000100000030000000500000066696c653000"/160, 0xa0, 0x1001fe0}, {&(0x7f0000000940)="00000000000000002400000000000000000000000000000000000000000000000000000000000000000cbc7ff08b5305ff15d7a61a574c00000000000000000f00000000000000000000000000000000000000000000000000000000000000000000000400000001000200000000030000000200024a8113ed050000000500018dceceda450600000005000700000000", 0x90, 0x1002160}, {&(0x7f0000011320)='\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00.\x00\x00\x00\x00\x00\x00\x00..\x00\x00\x00\x00\x00\x00file0\x00\x00\x00file1\x00'/64, 0x40, 0x1002960}, {&(0x7f0000000080)="000000000000000004000000040000000000000000000310000021c889933292eab88506c2bf4b219e41586b2ee7e0c3b5dc950e5fe51ed5d17fe4532cc4dda633133cc8325e596aaae7bf8240bdeba0be9e65d43d3b16139a6e1e7481364cab100c31c38db2492eb6b5719ceb4d", 0x6e, 0x1002fe0}, {&(0x7f0000011380)="ed81002b0000000000000000010000001a040000000000000100000000000000651f1f6300000000651f1f6300000000651f1f6300000000c9675f30c9675f30c9675f305ee78c74000000000000000000000000040000000500000066696c653000"/128, 0x80, 0x1200000}, {&(0x7f0000011400)='\x00\x00\x00\x00\x00\x00\x00\x00$\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00syzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkal\x00'/1120, 0x460, 0x1200160}, {&(0x7f0000011860)="0000000000000000050000000500000001000000adda173e0000000001120000ffa1002b00000000000000000100000027000000000000000100000000000000651f1f6300000000651f1f6300000000651f1f6300000000c9675f30c9675f30c9675f30f1689d18000000000000000000000000040000000500000066696c653100"/160, 0xa0, 0x1200fe0}, {&(0x7f0000011900)='\x00\x00\x00\x00\x00\x00\x00\x00$\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00/tmp/syz-imagegen2941961749/file0/file0\x00\x00\x00\x00\x00\x00\x00\x00\x00', 0x60, 0x1201160}, {&(0x7f0000011a00)='\x00\x00\x00\x00\x00\x00\x00\x00$\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00syzkallers\x00\x00\x00\x00\x00\x00', 0x40, 0x1202160}, {&(0x7f0000011a40)="0000000000000000000000001120f5f20100000000000000000000000000000000000000010606007861747472317861747472310106060078617474723278617474723200"/96, 0x60, 0x1202f00}, {&(0x7f0000011aa0)="0000000000000000070000000700000001000000adda173e0000000003120000", 0x20, 0x1202fe0}, {&(0x7f0000011ac0)="ed81012b00000000000000000100000064000000000000000100000000000000651f1f6300000000651f1f6300000000651f1f6300000000c9675f30c9675f30c9675f30559f02d3000000000000000000000000030000000900000066696c652e636f6c6400"/128, 0x80, 0x1203ffc}, {&(0x7f0000011b40)='\x00\x00\x00\x00\x00\x00\x00\x00$\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00syzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallers\x00'/160, 0xa0, 0x1204160}, {&(0x7f0000011be0)="0000000000000000090000000900000001000000adda173e0000000005120000ed81022100000000000000000200000028230000000000000400000000000000651f1f6300000000651f1f6300000000651f1f6300000000c9675f30c9675f30c9675f30b41fa909000000000000000000000000030000000500000066696c653300"/160, 0xa0, 0x1204fe0}, {&(0x7f0000011c80)="02160000030000002400000000000000000000000000000000000000000000000000000000000000000000000216000003160000041600"/64, 0x40, 0x1205160}, {&(0x7f0000011cc0)="0000000000000000080000000800000001000000aeda173eb7c33c1906120000", 0x20, 0x1205fe0}, {&(0x7f0000011ce0)="ff0000000000000000000000000000000000000000000000000000000000000000000300000001000200000000030000000200024a8113ed040000000500028dcece4507000000050001baeed06f0800000005000153bfc55008000000050001120052230900000009000100"/128, 0x80, 0x1601000}, {&(0x7f0000011d60)='\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00.\x00\x00\x00\x00\x00\x00\x00..\x00\x00\x00\x00\x00\x00file0\x00\x00\x00file1\x00\x00\x00file2\x00\x00\x00file3\x00\x00\x00file.cold\x00'/96, 0x60, 0x1601940}], 0x0, &(0x7f00000007c0)=ANY=[@ANYBLOB="00003f10e2d7428f7ff99d98cd1cdc1e2fa50407dbc95739e026b95176c1ba732becc3dddfc7f17060f6312da454cb4a8a8d4042fb51bc0fa9607ec5cbef3456ef2ada10e34603b0c115ab20b4fa4bd6fd3a18b258dff7e760d071cb590bc838aaeb1d9553881cf5e0d603cec2940e27ddf93e7e2a9e39e4b06ba0bc7b365a4e0e5aa57acbe090e4bc0318bf1cba3724282c64acc31060d2e76ba7fca4d49896b879ec7007728c7a"], 0x1) (async) r0 = openat(0xffffffffffffff9c, &(0x7f0000000180)='./cgroup.cpu/cpuset.cpus\x00', 0x0, 0x0) open_by_handle_at(r0, &(0x7f0000000140)=@ceph_nfs_confh={0x10, 0x2, {0x3}}, 0x0) (async) ioctl$BLKDISCARD(r0, 0x1277, &(0x7f0000000040)=0x5) 00:02:52 executing program 2: syz_mount_image$minix(&(0x7f0000000000), &(0x7f0000000100)='./file0\x00', 0x8094f2, 0x9, &(0x7f0000000200)=[{&(0x7f0000000700)="feffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff", 0x1f, 0x1}, {&(0x7f0000000400)="000440000100010024000000001c08108f130100"/32, 0x20, 0x20}, {&(0x7f0000010e60)="9c", 0x1, 0x7ff}, {&(0x7f0000010020)="ff00"/32, 0x20, 0x800}, {&(0x7f0000010a00)="73797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273798faea8246c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c03657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c000000000000", 0x420, 0x9800}, {&(0x7f0000010e20)='/tmp/syz-imagegen1373039678/file0/file0\x00'/64, 0x40, 0xa000}, {&(0x7f0000010e80)='2\x003\x00'/32, 0x20, 0xc400}, {&(0x7f0000000300)="73797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a7b050000007251fef995e99efb2a7273797a6b616c6c657273797a6b616c6c65797a6b616c6c657273797a6b616c6c657273000600000000000000000000000000000000000000000000000000000000000000000067f14e5d06c4de5e7328ce589af56380ec975a107da6c4e9fcf221d14a0079152205a63fcfae906fcc16e07ee8b6f822b2985d82e9064ad57da9d1b0a3147c10076a5900ac8bd111f7828f9c2ed659af52", 0xc4, 0xd000}, {&(0x7f00000004c0)="02002e000000000000000000000000001000000000000000000000000000000001002e2eff010000000000000000000000000100000000000000000000000000030066696c000080000000000000000000000000000000000000040066696c65310000000000000000000010000000000000000000000000000032307f818c5fd95556747b6d2aca4644c47984169999ac06b8f9f58914c0005c8940db8d256e92f74b0f033a40fdf743a1b368b836fc898e7800980bebb97f7346baebc9d378a544ddfd1a6bf535de88e4de9e3c3d60e7c3585c51066d9d7349be08b15c8c7ebd82f0c079ea2ed521f98cc88b20b8d08cb5", 0xf2, 0x809400}], 0x0, &(0x7f00000008c0)=ANY=[@ANYBLOB="61707072616973652c657569643d7c50d25683e4b6fd02ccb5b553c58bb51437819106ebdbb1eac3a0e7da9bd43e301bb6473535a0c8df9cf7f6a5b9a1330b4238aae1f62796f5bf2f723d1fa5910e2f66aee3073abde4504ea7fc3f66858c1090ef95bbb27beb65dead57c355b12ae216116979a2b5d1f85b70626fa7cb5908fc7b5a5413446d57389213fd53818e2a17e3c043b3e4e201809c66ee41a4654e095d6801a22bff17b4d9322f189471e6b7d5dbbd3244db68996a39d520de756f84ec940967872eabb2d8646187b3e3fbd2c4e5d47f15897b50207940ca6291cf749b732daaafed81ed79f60d51284e9cc583f7fa18e2ebd6a7d373bd3a77f2c2537995a847c80aa723455974cc2662fc9ee30dffc055766b59da22db2ff2e2735085cfdc7698379e659266", @ANYRESDEC=0x0, @ANYBLOB="2c61707072616973655f747970653d696d617369672c7365636c6162656c2c736d6c636b66737472616e736d7574653d76912c736d61636b66737472616e736d7574653d7f1259df2c6675c1bdcfa9944a3edb661db0622c726f6f74636f6e746578743d757365725f752c00", @ANYRESDEC=0x0], 0x1) mount(0x0, &(0x7f0000000100)='./file0\x00', &(0x7f0000000280)='ramfs\x00', 0x0, 0x0) mount$bind(0x0, &(0x7f0000000640)='./file0\x00', 0x0, 0x20000, 0x0) r0 = openat$dir(0xffffffffffffff9c, &(0x7f0000000300)='./file0\x00', 0x0, 0x0) mkdirat(r0, &(0x7f00000000c0)='./file0\x00', 0x0) mount$bind(&(0x7f00000006c0)='./file0\x00', &(0x7f00000001c0)='./file0/file0\x00', 0x0, 0x65000, 0x0) [ 172.980702][ T4418] loop2: detected capacity change from 0 to 16458 [ 172.995278][ T4418] VFS: Can't find a Minix filesystem V1 | V2 | V3 on device loop2. [ 173.038279][ T4422] loop3: detected capacity change from 0 to 131072 [ 173.062196][ T3086] I/O error, dev loop2, sector 16256 op 0x0:(READ) flags 0x80700 phys_seg 1 prio class 2 [ 173.077754][ T4422] F2FS-fs (loop3): Invalid log_blocksize (16), supports only 12 [ 173.088644][ T4422] F2FS-fs (loop3): Can't find valid F2FS filesystem in 1th superblock 00:02:53 executing program 0: connect$inet(0xffffffffffffffff, &(0x7f0000000140)={0x2, 0x4e22, @local}, 0x10) r0 = openat$binderfs(0xffffffffffffff9c, &(0x7f00000000c0)='./binderfs/binder0\x00', 0x0, 0x0) ioctl$BINDER_SET_CONTEXT_MGR_EXT(r0, 0x40046207, 0x0) r1 = openat$binderfs(0xffffffffffffff9c, &(0x7f00000000c0)='./binderfs/binder0\x00', 0x0, 0x0) ioctl$BINDER_WRITE_READ(r1, 0xc0306201, &(0x7f0000000080)={0x8, 0x0, &(0x7f0000000400)=ANY=[@ANYBLOB="04630440"], 0x0, 0x0, 0x0}) r2 = dup3(r1, r0, 0x0) ioctl$BINDER_WRITE_READ(r2, 0xc0306201, &(0x7f0000000040)={0x4, 0x0, &(0x7f0000000000)=[@register_looper], 0x1, 0x7000000, &(0x7f0000000100)='9'}) ioctl$BINDER_WRITE_READ(r1, 0xc0306201, &(0x7f0000000700)={0x10, 0x0, &(0x7f0000000580)=ANY=[@ANYBLOB="0e630c40"], 0x7000000, 0x0, 0x0}) ioctl$FICLONERANGE(r2, 0x4020940d, &(0x7f0000000180)={{r2}, 0x589, 0xffffffff80000001, 0x10001}) 00:02:53 executing program 4: syz_mount_image$ext4(&(0x7f00000001c0)='ext2\x00', &(0x7f0000000040)='./file0\x00', 0x40001, 0x4, &(0x7f0000000080)=[{&(0x7f0000010000)="200000003900000003000000300000000f1d00f7000000000200000002000000008000000080000020000000dcf4655fdcf4654f0100ffff53ef010001000000dbf4655f000000000000000001000000000000000b0000000002", 0x5a, 0x400}, {&(0x7f0000010400)="02000000030000000400000030000f", 0xf, 0x1000}, {&(0x7f0000010500)="ffff000000000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff", 0x1002, 0x2000}, {&(0x7f0000012600)="ed1b00003300000000000000dcf4655fdcf4655f000000000000040008", 0x1d, 0x4200}], 0x6800408, &(0x7f0000000300)=ANY=[], 0x1) timer_delete(0x0) 00:02:53 executing program 2: syz_mount_image$minix(&(0x7f0000000000), &(0x7f0000000100)='./file0\x00', 0x8094f2, 0x9, &(0x7f0000000200)=[{&(0x7f0000000700)="feffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff", 0x1f, 0x1}, {&(0x7f0000000400)="000440000100010024000000001c08108f130100"/32, 0x20, 0x20}, {&(0x7f0000010e60)="9c", 0x1, 0x7ff}, {&(0x7f0000010020)="ff00"/32, 0x20, 0x800}, {&(0x7f0000010a00)="73797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273798faea8246c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c03657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c000000000000", 0x420, 0x9800}, {&(0x7f0000010e20)='/tmp/syz-imagegen1373039678/file0/file0\x00'/64, 0x40, 0xa000}, {&(0x7f0000010e80)='2\x003\x00'/32, 0x20, 0xc400}, {&(0x7f0000000300)="73797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a7b050000007251fef995e99efb2a7273797a6b616c6c657273797a6b616c6c65797a6b616c6c657273797a6b616c6c657273000600000000000000000000000000000000000000000000000000000000000000000067f14e5d06c4de5e7328ce589af56380ec975a107da6c4e9fcf221d14a0079152205a63fcfae906fcc16e07ee8b6f822b2985d82e9064ad57da9d1b0a3147c10076a5900ac8bd111f7828f9c2ed659af52", 0xc4, 0xd000}, {&(0x7f00000004c0)="02002e000000000000000000000000001000000000000000000000000000000001002e2eff010000000000000000000000000100000000000000000000000000030066696c000080000000000000000000000000000000000000040066696c65310000000000000000000010000000000000000000000000000032307f818c5fd95556747b6d2aca4644c47984169999ac06b8f9f58914c0005c8940db8d256e92f74b0f033a40fdf743a1b368b836fc898e7800980bebb97f7346baebc9d378a544ddfd1a6bf535de88e4de9e3c3d60e7c3585c51066d9d7349be08b15c8c7ebd82f0c079ea2ed521f98cc88b20b8d08cb5", 0xf2, 0x809400}], 0x0, &(0x7f00000008c0)=ANY=[@ANYBLOB="61707072616973652c657569643d7c50d25683e4b6fd02ccb5b553c58bb51437819106ebdbb1eac3a0e7da9bd43e301bb6473535a0c8df9cf7f6a5b9a1330b4238aae1f62796f5bf2f723d1fa5910e2f66aee3073abde4504ea7fc3f66858c1090ef95bbb27beb65dead57c355b12ae216116979a2b5d1f85b70626fa7cb5908fc7b5a5413446d57389213fd53818e2a17e3c043b3e4e201809c66ee41a4654e095d6801a22bff17b4d9322f189471e6b7d5dbbd3244db68996a39d520de756f84ec940967872eabb2d8646187b3e3fbd2c4e5d47f15897b50207940ca6291cf749b732daaafed81ed79f60d51284e9cc583f7fa18e2ebd6a7d373bd3a77f2c2537995a847c80aa723455974cc2662fc9ee30dffc055766b59da22db2ff2e2735085cfdc7698379e659266", @ANYRESDEC=0x0, @ANYBLOB="2c61707072616973655f747970653d696d617369672c7365636c6162656c2c736d6c636b66737472616e736d7574653d76912c736d61636b66737472616e736d7574653d7f1259df2c6675c1bdcfa9944a3edb661db0622c726f6f74636f6e746578743d757365725f752c00", @ANYRESDEC=0x0], 0x1) (async, rerun: 32) mount(0x0, &(0x7f0000000100)='./file0\x00', &(0x7f0000000280)='ramfs\x00', 0x0, 0x0) (rerun: 32) mount$bind(0x0, &(0x7f0000000640)='./file0\x00', 0x0, 0x20000, 0x0) (async) r0 = openat$dir(0xffffffffffffff9c, &(0x7f0000000300)='./file0\x00', 0x0, 0x0) mkdirat(r0, &(0x7f00000000c0)='./file0\x00', 0x0) (async) mount$bind(&(0x7f00000006c0)='./file0\x00', &(0x7f00000001c0)='./file0/file0\x00', 0x0, 0x65000, 0x0) [ 173.100010][ T4426] loop4: detected capacity change from 0 to 512 [ 173.104297][ T4426] EXT2-fs (loop4): error: corrupt root inode, run e2fsck [ 173.107341][ T4422] F2FS-fs (loop3): invalid crc_offset: 0 00:02:53 executing program 1: prlimit64(0x0, 0xe, &(0x7f0000000140)={0x8, 0x8b}, 0x0) sched_setscheduler(0x0, 0x2, &(0x7f0000000080)=0x6) r0 = getpid() socketpair$unix(0x1, 0x2, 0x0, &(0x7f0000000200)={0xffffffffffffffff, 0xffffffffffffffff}) sched_setscheduler(r0, 0x1, &(0x7f0000000100)=0x3) connect$unix(r1, &(0x7f000057eff8)=@abs, 0x6e) sendmmsg$unix(r2, &(0x7f00000bd000), 0x318, 0x0) recvmmsg(r1, &(0x7f00000000c0), 0x10106, 0x2, 0x0) r3 = openat$fb0(0xffffffffffffff9c, &(0x7f0000000840), 0x0, 0x0) ioctl$FBIOPUT_VSCREENINFO(r3, 0x4601, &(0x7f0000000000)={0x20, 0x30, 0x140, 0xa0, 0x2, 0x0, 0x0, 0x0, {}, {}, {}, {}, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3}) sched_setaffinity(0x0, 0x8, &(0x7f0000000280)=0x800) r4 = bpf$BPF_PROG_RAW_TRACEPOINT_LOAD(0x5, 0x0, 0x0) r5 = socket$phonet_pipe(0x23, 0x5, 0x2) r6 = syz_open_procfs(r0, &(0x7f0000008640)='net/rpc\x00') r7 = socket$inet_tcp(0x2, 0x1, 0x0) setsockopt$ARPT_SO_SET_REPLACE(r7, 0x0, 0x60, &(0x7f0000000440)={'filter\x00', 0x11, 0x4, 0x3f0, 0x0, 0x0, 0x200, 0x308, 0x308, 0x308, 0x7fffffe, 0x0, {[{{@arp={@remote, @broadcast, 0x0, 0x0, 0x0, 0x0, {@mac=@link_local={0x2}}, {@mac}, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 'bridge0\x00', 'erspan0\x00'}, 0xc0, 0x100}, @unspec=@RATEEST={0x40, 'RATEEST\x00', 0x0, {'syz1\x00'}}}, {{@uncond, 0xc0, 0x100}, @unspec=@RATEEST={0x40, 'RATEEST\x00', 0x0, {'syz0\x00'}}}, {{@arp={@multicast1, @initdev={0xac, 0x1e, 0x0, 0x0}, 0x0, 0x0, 0x0, 0x0, {@mac=@link_local}, {@mac=@multicast}, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 'veth0_vlan\x00', 'ipvlan1\x00'}, 0xc0, 0x108}, @unspec=@IDLETIMER={0x48, 'IDLETIMER\x00', 0x0, {0x0, 'syz0\x00'}}}], {{'\x00', 0xc0, 0xe8}, {0x28, '\x00', 0x2}}}}, 0x440) sendmmsg$unix(0xffffffffffffffff, &(0x7f0000008c00)=[{{&(0x7f00000003c0)=@abs={0x1, 0x0, 0x4e20}, 0x6e, &(0x7f0000000600)=[{&(0x7f0000000440)="269a40beaa22ef9f7b82c775c5092d510d151ecf2342c4f18eeeb04b696984c7ba20baa4ae0e1f3e60626123c76398c5cc2b92a4b29c34b903ac58f59b37ce66432044856e06ec82aab6cb78d9212e273c6e09577e515768274f77f2d8c0b79c3e4ef3f8b8a6661f0456ac5f5e578389a69de6e34612e6", 0x77}, {&(0x7f00000004c0)="999c1b49f64fda4fdca8649335e0109b46", 0x11}, {&(0x7f0000000500)="ca3f9f1366658c06802d68ec415d3c37da9a28016f9f366d1b1546a98770cc73d0b030a4b6720ae9b49e94d29305ca0338146899d4ba47152ee0e63d676b48d06f7e532d5d2f7d8f989edd7a074bc45332e8bf04cb367bca845009b0e6a2357ced44b30bed8149525717f65bbd973ecd1e6721af72e335cc6603b832abe5c833ee7e2b437541fc034f864bc8e736ec69b2d6d79cd4b6649be5477029b9a3d47bd85b5622c8ccca6a8bab7d5a261824720ccefc2802bbe490e985151c4bd3c07a17ed100a79b348694dfaef580af5cef51066d8a796e2d2330b4e0037d2a8", 0xde}], 0x3, &(0x7f0000001880)=[@cred={{0x1c, 0x1, 0x2, {r0, 0x0, 0xee01}}}, @cred={{0x1c, 0x1, 0x2, {r0, 0xffffffffffffffff, 0xee00}}}, @rights={{0x14, 0x1, 0x1, [r3]}}, @cred={{0x1c, 0x1, 0x2, {0x0, 0x0, 0xffffffffffffffff}}}, @cred={{0x1c, 0x1, 0x2, {r0, 0x0, 0xee00}}}, @rights={{0x1c, 0x1, 0x1, [r5, 0xffffffffffffffff, r5]}}], 0xb8, 0x20000010}}, {{&(0x7f00000007c0)=@file={0x0, './file0\x00'}, 0x6e, &(0x7f0000002dc0)=[{&(0x7f0000001940)="cbc0fd3854da5c767fcf063246c7ce42dd659841f3d2cf87d714d1d25a5f90ce9ad3685075779e2c921e1dffbd59e26c901db4a2814cb5bbdf4a86469fca1880168a51330fce536c8078e3e645ef3a5b6e855c95f3e93be3f005ccdd12f8a5f8e5d59c00615236d0d53644a690a464ebd826f1e19b9da8bc8c8e105f98438295d3078a21f8185ed89c1a7b04460458a3504ba5d0ba879b802ab92c0939b3cd79742314c7fae9b5246b3d9f596b22", 0xae}, {&(0x7f0000001a00)="e98006328214823844f36b8db1015ebe85c89c", 0x13}, {&(0x7f0000001a40)="9c7f29ec8187cfb4250401cd0a60c08262676b307573d5b7d05ab67a26ee627fdebffc11074fc39d42017b23b8a9bbfd9bf164f4321d3f4d2dab9b86169d146845abc8c92beaa01c68f8211fc5e5961106a4285ad1ee74f52f13f3882e2fc200eb3d89cbe8f87270b194d24d9817e74f2eaf249049cf9be513aafd912c4a6a8c8fd08c8f6a", 0x85}, {&(0x7f0000001b00)="813bd9d012ad517f5d0892d4415707a0444150e70fdada66574dafbde63a0c1415bdd78f3e426078feee2e544f24c5300da642357786e712936f8de9aa7171e7a0541750cd8893f00b47bd5cbfe7771c8fd3ef8cb977130b06a91ccb3a0096e2040a97b307c8ac9480af8cef79961ff4461b48dc01a10b91be1f8da4cf144910bc5b8f2840c45da231534473435a48647d99db4194d7aceae1c76642ac4f1023eb9c60f50d3a4b479bfcc71f574d84ddbc28f60417204cda9ab545266c2d4c27f37d", 0xc2}, {&(0x7f0000001c00)="f30fcdc7db0f3088d2cd49ceda3679f177a072becaf0e18e104343143e793c60022e71bf59f6ea82a12284e7fca7029c383209cc2dc03e6ba929b6735f0b232cf79c87dcfa906cfab287108e41381224ec09c8ff2d0ec51b08254a7daad991dbe2a9613d6b1e811846cbdbaee8252805b5e18d0a1c0b2e11a90731c12a5ae4b7c43ca2f1def5d4897589f1fd2aa64a609cdbff71842ba4a1af21d38b14308480a2b2f7fc0b75f9de32a58fc8daa698155aff", 0xb2}, {&(0x7f0000001cc0)="f432801efa0acc6c0d2a779f4ac81e4d2fed3d1396dee3c4e6b0205922363f4cce49b947b3ebb5c83eabfc1b722c159af4707c601d8a970eb128eff7f070b3d99b208b7addc9f0a5a8fc379a34cf13dfa9b0b41e2faae5784576c0e079ab4df1c790b85787f34ecfa740dab1f903d929fb665564c7149dcbb89f2bc3820c30bc6bfd3a453f6586621f5fab5736cefa3121f35baaf657620ee622c14160e132a5c3bb579bceef09af61fef7bbfe106c2787e0b48ffe555e", 0xb7}, {&(0x7f0000001d80)="c19de2949fc737077a8ab67c6f8036bd40ed04103d2fac55fdad8e1adbbebc872f2150cb737d6e60aaeb370b2cd7fbb8f7b21b390803586dfba94f6614dbfc405e5a090944abc95c34eb46bb4c9f69e5db76d3fe6b980b4457454e08b00fa285b05fb1dd38ac37da5faefa3733fa15b439b34a2e7dfca88e30306442bfa455f723102778d531652e70134322942fc2b9f09b8b71203fc915b6aa6e24e53882aa9e422cf3eea08378c4fe2eeb0575a1863a1d83abff91640aeb00bc048c29113b17869cdaca406ca8b56587b2b1fdc0c6da770b1e08f8dbc24abe22fb8d7c66377ff832d18340588e21a7d2e9d43b7f9816d00f28bc42d54b8e25e49cc940295275972dbcdb5d0915f0f8d31293d7ad930aef0ea2ee95b1b9a89d0f9d781782d2f672f6d13dfe6d18fe2763017ae7e2e97fcca92cc504ea681231fcc54c65e920a5017a1b6616c9747521f3cd10ee6dd82208bc4775632de1a2ffc6f5a472c76f9abc04de1b77c61ded5e760f320bf35949ec02a3bb2e80c04fe99ff861da45755015b3bbb2a9a14a3e5204ef57ef29d69ad50823844b2b436115a20bfc3bc7d813f018f52814724933b1b53a91f262fa4ae80b4b401e8ec08b5bdc12afec26c2df5d53c2f7cedb1e529eec71cdcad50e568ab3b174beb0e808d3ef1fc16225afbdcae7bef7a418673c288712a136799ed2b4c745b02cf00cac5051b7621ab13f78907c5c1984d38da21618336c708004036f9a07e6d6c35e7ab70d70de4c76d9578dfc3f5e5992ecfee702950098762e2a2c40f1035ff1c8c2f47ec510600aa32bdfaddcd288c04103e0200675ad64e0dca412e742eef77d047377513e43f62f76049c5b0eac6aa76c587c3675da2f085c9fcd410dc7ccc4ca7c7952ceef92237b9ab87620298e2bac87f4cccf5d933d276c4fbbbf0b169cf38eb818ca54308830a3df4cce4ea75f2ea8d1efaa6620a24ee6ee848e3359c98f82b9654933781359fbc643f777f8ed6f8592100cc4a05f76298bd1bfa05d0b4fb6e1ab1623c1f81e7d0288e2daed20fc4bf5844e841b164b493c08fdc1b9cf12aa4d6d4b23e118e1fea7b6e633a4b50adb3c572d04a0ec5dfb3b7ced7e8ebe8d5f1aa55d7dab988a9f496547537e79c4016abe6e9e12505162ab04373a1bddaa21e2901267d0f6265cfec4315bed136f94de530190f921743a086a1fa7d44e67e87de9469fffda780960ed454c04e775d7860a29ecd6011e84a78bf0c06613457bf6f54df8ad257a52710b3f7bdfcaeb2e7ef43ab1d911ef24c77d7a0b92a05ca94d4032b97e393fa287b5d2887f8cbee75cc907382d5290edeb55b0fc2f495ff59d766172d5bb5f52c40afb555146280691ec703d8cc1005b9e8272783848d60e7ef4eb523af0752ae43d7b60ea9b5d53a5399b3ff95bce26a187d30e1e4e369e56f2bf165c2e07643f641c6f0bec81c7e5de5fad1d2b01ec4ae7d475f43011e7edeb4353c67f49b0be334ac89ce05d79d0e870328b02223e50be23f73c864cb3202b20944ecf1b3821a3a950a15806323484c78c05a2aaeea2aef022689a64c14c416eb3cf72b1f19621eef2347664801be95ac7a30349131147c408aa7e9f824764569fc62d8f1ac405e483ac65fa4710f68dc326d752bb43746a3143a2bf6af48e54445504f19d0199063a4c95817db0c3ee96995add518acaa4c905830035399a0cfd67a3572d48f9021ba49ba2db2c1351917a315a2d94d1d1c7191cc2a15860dc0360075cb8d1bfac00a4e5d0cbdb4d527f8f625cc4e5a34991fdde29166b708ecbc72affad7370d57a6e4df6078e0158e0b9ab14f6e8cd9875399a6e3b2c2e11d8c17727c830415fcc6363b6a3f8f9b0e3b33da9d5827dd3a7d4eb963f25e70c322aaa8025c63399101738d241386fb03cab9a1857401e64621fb403539f7fa7a8a4e6a151a488e195d77375a0187a450ea02c6eed6d84a07db0c2d67f25786706602ea39278589b42816e7f0941b60369f017903a1ffc4000615686ddd8235d5dba4c34507f75d05844b3379dbdf51e4e65c93ff9072040da89b37dff66f762ee7112643e3fcf16a8b17b5a86406287e2ff8628feb839ba682ee91798d0790bfeb6f584cc38d44db192044a40959211b614502c23354bca3ea1008e1d0c0e06d0b8ce04e47ab82cc91dbbc585df72a8bb1e5717ea03246c04c4cd43947ef0742e9b19fdd900e422e9bc61a000289d6c9e99c1d2c64aa2ba971539723498e34cead429678e13fdddbe43323e3c78c127058ef8d122ad9a42b75f4dd72833f7860c6bb2fe58bb5d8e704fa17be932ff2dc5d3a6d2eb3978fdd6c6e85a628c5ccd0c8ee9dd2c20b84d3c5d0e3ca66895abf208836cf4519c50d7c9ce22a035624a51380c50b1dec84de2596889ba619faf6200643bd6fe709739f2a87584df2ca9eec017bbd51bf6127551ee3399e8c0bf06f2ba25758603d8c12650fea2eb97024e108fa0ec049cbd66ce2831288e5e3d31d609b1c741a3059154516e3ecfead766ba06ed2ebd3b8617d3227d3fe1faa5a02a96208eae1e82314c1df1ff20ec70105e758460e4053f10a066a86fa7cf81ef60f64692abd2ab3b057e03f96104a0cda6f679a486f7a35e7ce5054e81ea63db4c31ed4d325c8fda9c6c49aaac068dee308da645928215b0055555652a8cd83fb780a9e72554d3c80abedca81844d7ee3cfb6e032d9845603a7c8c525c3c40814937bf60a9f4602127f44d618e74c7d69d89a83327eaac67109b0f5a10e59ef5eb516391d0422b6c965dbb283a09475448a1b6df5fe0066eac67498efe243a491b2e042959bb73c337276d59124fc71f35954c9dcd21465930a6593f59ee00f365a1c9c0e9449d1ebd5406094becbbf77e0b59313c11fb4a448cef2c34ee393d30f9fff44efe150fcb5121e43644e916b28fd4605ec4c733ada7a43162a8cf709686743d9a9e6e6dfab7ff78e9b3ce37e4e4c37e66f8843e4050bf998c73bab51dd21aaff05035445f0b03115c88bb1baa511567055e25ac9662f2281d55c1ab464878a969ff87d97d48ead3559ebb7458b559a9cb483d8f2aabbf044684e271af0fc1b9a6e8305a9aacb02436a82715aab0c5d25d87b2a3536530c523b57a55cf6fab55cd6aa20bb5e7c4435296f209a8eaa91fef5fb37a0e1146ee2767cf1bfa1b8def585cb7cc5706cad5eacc30c833f85a25e1a6f7d1d174ced6efbd42cfa2a1899e391df9102752478ea1a44039ffb653a7893627f686460f68a9fa4ebc5cbae258a1d44beef3ba10ce58dddcf954eccf1beb617367fdffea0aa5f54adbd0d8045a643685ed83ab4a8fc964f6dfff377378d957053c962bdf8ed627e5a54096ac04226b89d88faf8e8f8464da75bb0a00d7ea76680967dd4be40b0228e6b1cbe0c386888f72ca886213148d651f20cba95caea910284025b891a3d68d1b6b9f48047b7784430e2da52009e651896728b347b04947ac409ffb320f9a84744697fdf82fec624f109c10ddccb0a4aae375b43dd8e21aa7610b4deed02ad6aa8951d1cf73c227bd38eaba5e32ff550b17691fba889ebdf149e45926112b4d7900f258041942c81fc61fd65c4ab793e0594bd5b188e68509ab37ad577440992c8b634723eab4a3bd53426f4972f04e975e129a4139a842f7563c480ef39326f727591529d75f24ab8e6b58fc5a6c1480711d76d27caa90b694ddeaa37ec9585c81c9f75cbd7775c2919d352b7a921f64b09ac7e9161db6ce647fdbc27ebda10a6fbbff4fd50086335b89c18128f518db75862b3e884dbc3d196fbac4bbe3fefba6940843fb1d160ae03f9ea145710e72002e1eaefc00b5c494cec73193c49c6f5c81d7a398e68ea6b843b057bbcab52ec55cff03565499f9b202c52d328e5beaf35b1f1e3d60bc97f04bdfa38d8b9f2e60e3fb9d17b1525169f7ee00e21570041bd922c5a2b8f9589efa0890ce3940f72ac6c4b68ccce51c84f7e5f911c50d634f04a1a21b2bf23bf1707b00ee66494216358236829e2fb1cf9a3097b0410c49b3eb02f29ef0759afe201233db245b5af0827ef7d0cf30f6205c4148ba9c3cb721fbbbafef75bab808dc6c8c47bf035712d4718192e46efc09a005de25c84f7b1e92f369bd610ca988754e349f5bb6f6f63fd7ebb0496783324593677773d0e9b379e08f750e3b40e864ff8328b1c3fe32190de29a0059ad36c0cd75c82a164f08ad32401a86d84473225e4b956e3a587a5d59c21a01eff5840328bc5ae4b067faa620868ce6c764811415dabb98ae7cb69cb8cec74d88fcbda8dd82791aa70acea8e776149cf5607f0e18f8e7349ed82dce21d30fe96539f7992c182a52ad878f28bef3a2ee1bf5b994d4b1a9b570f0d80442798535d354463e5e4b2ac410d393e804f6f9aa5b689b89f86396064d24b2d2a58a905ce2be7e5746245e289e5c4c4987983998eef615f6b88cff4e7c9502f7ac4496757e66efb634e0cce1eb8eba59f85c3636a2c23e79ea77cf7460ad8eb8d42d11005862e6d18441c7c652de500c68ae4ad5f5f6ef8b42eed38cf34106294b5c3a05c4d01dd3087d4d800d45c82a75cb5a10c2ea4a6beb4707e88ec7eacf96495ed0543dc44fe5dc083778a9137aac2fc3a0344b7e468550b172bf25ee25e4a8d34823e0d33bd8d1beb9945411bfdfb3ebde57683c5b4a23f3888da838ec56e477c960892f4640acbc83a4fb590572b9b99d901d7da8f0e8e2e08172e38e2c14483ce8cef87ec2073f05a0634cf8227fd941cdc3a026e1ecd7caf370b68e851ca84bfcc55f8a8adb79070a68fdd59848428ab480b887e8155d9f20c82211ff13641eb573eefaefca510cb1cc9aa39ac86f89b06fd76bb62246162401c33d907afa65e7725c6f109bb9dcbe139890ab721e869a5682f8045f6523204361ce03387d7bcc155230d3fc8a0f43153cc2d93bd2f5bdcdac895f503d50d8201939ac08b0c80ccc8b504911105663ad59de3854aa6a7addb212848537bf2d6fe9ea655d782a24679012adfcc4825b739fcfb559b70f880c45d2be018382b8c76d1ea27ab3448c8d280ad0134d0ad795556b2d706b4f0ed4ac8d92d51af7db1e58b3c88cbaa9921521a5654acc92487b180315b8fb0fa069e20e597d9fee8156ff05c6eacc623e8a6c7ea85b067ed4c1189e0599b89eac7bd37783710f17df38371ea8a732a8c3ac19e59f12670a26aff1e105a20280146e08c2ac997fc1fc8ad0dc1d1ffe42ddf7ae36b6e1e657eab8eac834892556cd83fc54d3a7a1060071e63e1b3cce004519aec81c6387047f6d8ce8673cd16b72e10b0bbdd24b07a5460ce90670b0505cad83e06a2c3128de93791296e23e528b4b4575c719867004f1652d0b4a5403cc61ae36544b4c8a9e7d7c5199af326d2113f3d3008089b7c3629dea2bf05f7cdfa6df4d500c8291c780f1e3e9fc8a762fd6f91452d8fbdcd1c265ecb48b40bf8cd22492699b0c93a0ef9804e28b2deff4115ba7f616bd8bb836a1fdace9011ef074a5bbdf173634429216dfb8b2c924ca7be6b7a19ce493260dae6e837c621927dbc2132340f5b412383daad86244c2c540550acd81f3e87d093e1df64edfea4e0dedcac9ec9e1f244982f35cf761cc067d1d8f228dabd9c7a1476fe5dcd5211b2d0e86304caeab6ffd467e865ec68280fda096dd7a02a7cca27e8cfccb5b86de60dcfbd50edffcd33fe9a6b276f961c033183a03b043562aa2d00a8c914826c5e7bb551081f544849c8210a029d1ef5a4e5ab395ba6e6cceff4c7f", 0x1000}, {&(0x7f0000002d80)="ff837344c7d08b90cccc00247725fee51c498c303f9d8d5c5ab1e1ba9eec99c59642ba264225622f5f89", 0x2a}], 0x8, &(0x7f0000002e40)=[@rights={{0x18, 0x1, 0x1, [0xffffffffffffffff, 0xffffffffffffffff]}}], 0x18, 0x810}}, {{&(0x7f0000002e80)=@abs={0x0, 0x0, 0x4e24}, 0x6e, &(0x7f0000004100)=[{&(0x7f0000002f00)="68000d2b520b2e044496cfff6ef74fb2cb30a81e6572adbaeaca7cac4ecd47434bd253f6746e38ea7061a6f5bb5d18f4242abed2b0e55c5484346cc0394ae6dcc9c1506bbfffbe2f9e407673db8a3b2129c783ca0435d2309bb4009a54c70c036087b5f236b0e11d409305f745b267158bd88b42c5fab7c0e1c1367298a512fe36fcfb21c5fb66223828a3275fe99f34b07bc44b928ba66fdc2829c6fb796d7ab31fe04ff2693e44b57e42", 0xab}, {&(0x7f0000002fc0)="250b36d14ea801833eff88ad87e085c2fdc8e489284b800224c8e1119e9a8f696a722362c5acf52b95592da1cc98f94589fb3dafe80da552cb147dfffcdbc10a9992ebcf476840c1f13f15b42548adfcb7dfc3555190be72dc2bf557574665da93eea6549150a2575e110826a9983ef122f4225241a68bb111fb455aced9a06e6531f9d1269461b5c5d292657b77854fb035080c16b005e5e2ed1384", 0x9c}, {&(0x7f0000003080)="7cee90bb1f7834196c441bb66ec0d80b133e34d732deddd8e4810741ea532fc8f501aa725938a75bdc09be878a93ae79dd14d36f38e6fbc64b932e06600609761c8b835d8946a8ffba9a5c11d23339e73357c65eae6d765f93d9a7b9032fde793ccfc09aa4adf0d124da189623", 0x6d}, {&(0x7f0000003100)="850e6c740e9ddad48d64714cd07ab0987d692f7fe1b59fdb0012089d1b7be325ee053b44db920089a057508378aad2c44f47197eea0b3879a3b765323cd585dbe611b5dbc9429337c3e5dfda8a9acd43816ab13329330404b7bef50039934f28bf346f95447ed9b15496447bd0ba87956f06bb671ac97d9882e33180202597be6b4c41e8c07ff1bbf27139c0cbb724f5a708600030ce43d9be138a97af36ef2502275691c84acb40487188b1856e2fd05ac60a658051444f859e6bd1be97a2fd0f384c7dc54fad1693c7791f2d804e0b91d238fd2e0a97e0229f1762732140545cf95544adf405a8bdea399d88460ec32255818ee17971ac32c4755cba9d83a686402f485097e4a0b3411aac9b1a27dd209b9944ff5162d58b4e453283421256ab7ba02c7b027b9b42234a314042dacdc422b5b60826258c300f3379ad3fa54b31c9fa385f39fda2b7e76ce475c5f32100f248872a72431675c26e8c626b208f404a4f3a5b75b407287fa0069ed423b8923258d25af1730546aec4e54768b3cd1f6b446a4f286ecf649661307dfce6a158fe38113028bfb3ad3186ede6136420ad86cbb551c08cb6b6e908e1eff59ccab9f0ceab2319ed229f5a7aae5a1eac20f24ee85da626dcf56181e3c59f9738106241311ea35ab163dc6559de9aa5059ebbc7db4514de107cc210b29c1b6e8fbc42edb574bde20e72edd8a0a75e61512202572cb36cbf52552d39055fafe96578a831b28981f7f2c1a971c9a440499405f2f30ad12bfa17ad69ba54a6388cb82fe12ed82973230135359f351d647a290e248b8164247f86b965d7c937a88cb9e21af2649fe64f0b227cd07d8fc6a07e79306c6656250546d17be60e3e0612049df970c930f0fb50b419311dbc8182f911bece7733655b7b135d97323d901a2c021438e92f7587a21186cac99d0603d7cdb20dda0153c35f82998c0c1188b357e68b5ebaf4e856c54375abea42753e1d5bff29861229fcca41b9e3d54a69e2b31c27adb5032623bf5ed9920204eb3756a45da329f19d9515a3d515262495bf9aada61bc70c1358b8ce904ca862d20b9392e3997e7dbf882257e3758a26168d31abe80dbcac04b10fd8f4980bc3f651e775b1f5ae77d82e0e86882290f6248f5526d82bf138dcc3db394c811cc7c778e015293673851e78ccbf1f6f3dbd63733e4c63a51963de952bb87dda3483d42b323f224a3ab436cbf0be64967d19aaee7e9f14c9b166a787dad21fc01992811968af18999c44326b9692d864625dff5c4fbe3474857f598ae8ac239110df7c35655ecc0f714868732959f9f3ae3e62f924d8bffb94057397dad54507196e7da8439830da9916699c5dedc315b1881798f7b08e57fbe1049d0211f07dc91db31cafd2876b17052b95f323f53bc37f00d1d9aea295b45a1a5d48c2d55b020c38fadf473472d119cd9f0e6eb8992e97576ed64c83b144a197acaac1b15d24e544c3ae23fad16a62d3e1a77059d75eab5b2f6249b6e21352d18992eaece2012b9c2a2d10edb4700617ed409e4aff1d383557342302deab30682cebb997c0179b1eb59640a38f59862230eb58f1833ae36d39a4db70d4d3bbab298c992f2d3bbd633ef470931e9bdc61be35438c7367511e3a4849def1c30f6834a1cc320d82c7d7286a734ab5d8a9ffdf444e83edc8b86b35187f5030af58987495a52a778275dfe07255442651ba0aba6856bc5445208181463c08fa0a8911ba51771fe0d1330a10a9b57e058a613d80b15fa822ba5937e01fc40b719a8d8ccea77aedbed8c982d89f8cbc7c97081e7adfe14ee16d8bc08fe06ba6ee66b96f92e38319a2dca3d575cad57609c46d9e62ee64a586a88dc8f8dfd5d1b0d49086923f81035cdb49e2b2d3bfede0d4b1e7e62c67ff120697ea36d7d42cb5c0845ed0bcd1eaf261ef43c9e918bc815c6bb98a83ce2f22e72d294f617e4d5f3c5e373108dff1fd46313554af56d01f4caceabaaf15bcc0245f4cb864cd9b845778a03cf882c5a83b2fcaff4f71805277e18834f3c13b6fcae63a1675cd196319b73e2b98c129b7709ce49e753aca8be4e6238832fa3ca7902c635d7f861ef68cf842e58c8816d5e6c739e9315fd6a53f3df4a74d29dc813ed0905acfdd290385e4ec252cd4f0b801378f9c3eebd37cba0301b627a16d9bfd3bc3a7b05f8751810aa0f94f25e86850ea33032711453f04d056cd7fa698cb2bf33ccd26592d71eac90ba073dfe16fa35baa77cb6741e8b500267ab534bcc6dcdc1bbc607555a23aee0e2fa902c3021f3f91ca7e0b46fdce8d246c3e756a1989b95e1a166cca0022f317644c342c53072cf1d7735b50b8c2103fdfa262b74fa8a260989d6538e3721e357ca49bf7bdebc08a7ac952810c8a6f65e0da4282e2e17186ff2352502c82df0e74ed8b81520ae89bd056195d72ea3be82a848a44639bddd68979e60f9e47900fb02262277764f36b58ce12a5bad3edb7772918fb7e2705028233105099b5a77295737f365e4816f9fbcd199302ac85c33074b0c1b8716d6ca71c8f1c82d45278975c5218f011dc1c35fcf585d80b8cc4094f0b7a2e88d26c7a40300c50c8168ba8459f876aff3604e683a55eb7d32749bc001c019cc8da3cca3cd6d9dc7642cecef4a2f394905eb5ba481df2ecab5968ee11f7e3308ddfce723524faadb73e1f07ef581847bd5f2f28ef8c758f6ec15506c8f2bbd4e1cf24d1ad440b254849a27e60a5be93988b5434578b450d95590562e3a4aefe54d6f6624ef5074291e83f22b1c534e4d1253b7018dfd3ac973c6a91421cad697f3438fd4fa4799ad0226df00a75878b95d13185df49055c4a324abec5de224bd7b1accf256a97fd32732aaffaeec137adf20552f4b462c77a3edc6556aeef0145832c6fc8e67dacbaebb05cf29d683255560be2e2e61b0069f8dbab9198f9a91d743a9bbc1beb12d14d71519166e160f5c2bb9ed916d64b8ebcbdd8d12220c53b8f90d3c3ada9e49cbf4c7591f0d503d458767ab6105393e078f8f66f623ef0d053066519cf6e74f74b52b814f960341bc1e3f6847b63ff7d0d0c9fae8823433afa2d56811cfe5f587962c9e5aa615e308c47ef38ee2dc1266fc357b31c6c9a6fb447b5aaad2d7ffca489ae64a6a7cd3de6a0756e94f3d5d0b6547e971cdfbe9e303f51dce2e0f6a0afa0b6c66e70b595710bac58a05c3caa10010f53c2c52f2ef669cfea182d777a7faeef5abd9c0e0b612b7521a677226d985305f27dd0a2a834f128a445e1e5a788b2caf1d700f9e9e0548388265967e8a21634e63701040f2bdf85c8f285639078a8fd0db8105e9d88cd09ae62d5beff88c59a698de40866f745efae29af8cf200513158088069db358a5eed57b0566960f0c12653a946714100920ad29328e6580f5548875350cdec89035b9ea87a00bc54a2c48e27e906873b232790cb2b1509b6513f36f2227a3ee0b0fbe0d4d187a13562e5e6472a386c5683c612caa403f43db8faa6b1fcf9246e8fd39c9ad8d965939aa648d734ad0c58d6996841aa14f0be44d6b0639d1ecd592ede52714eb7f6b568a881435284b942b8f064c5a5854d8e61b512555eba832ac15a2f26c3d17fe1929309bcf0e402c3796a29e9080badba04cb2661a2c7e3a4090877f17821111af5e79e40802d22dea42701c12a89569321a96dc297d541b1bfcece4ecf95da376edb2f03e70f4958f273466008322a38c0882ac492fb6b493aa310f12acbcf66a7e04709c6ed08a453456a046a4219bce25e8e85ff9c7c23e37926d3fc21c103a0ee423070c40888461f47b179c7710de508a5ee1dabc225153afddb5ae7d3e2877360fb2eb20a12a45da4c47091d417c753baea1b82afe70d941aa5aa1cfcebac1b3997814f008a875f411191242c1da793067cf2f69103dc51fd67bfb820906cccf9f39d974b23db4bdcb2c9c71abf9b130ae073decca97ba71e26eb1549a4427d22adc4120138d46f88af22675a2e46393ad6f9d78577310e5dffb9bf5f2b5221aae500d2063580ece86e9228c1c7e1645754d6f139ce3644843d6c3a8a66e6e36f9cf18d3f109cd8fc45c94f43ca912c783e0f483bbe7a99ea68cea0852f2a3d59cd6dc6ec93ee7f84f598b37e99577fe141f3a6418b2d7a9ed1ed0d584da2196092952a7c02ebd5fe896374c9bf1058fea1cdf8921137a8f506b0028d0c7773edae5515f1b2d43fea8ace5a39043b8ff4c9d7633c69fffb0dfa2ed081953d1afd015b5c8342f1df27438c032b5134346e89656dd904e52607bc114e79cee235bbef837a32b42a6c1d287cc96e72cfa2bf1c6edc77fb1fbb1fae396bfd7da5815a3419df3550708d71c229e052029fe92e1ea6e980910c7109618987faf5d48e106f84062f5c119a500813aa7da40202844703ce2b3513d35d362588de2a7063a8aad98f33f2bf9b092ac3b9c9eb1cf938cd5774b7016bccfebf174930d65d9be86923120cb529a382f3737b5b8afa519ffb94506af69b6571fd17a9cd7380f6c0616f1584e5b32e3bc95b43a07af70fdcf768d7dc3cd0b923ce1e3eac379b405ce5b1175184847d09fd38db3a4d95a23780aac05f2b56e43014559dc0e0e48299bab6df0890ae6900783d478c64f3cca0fc9dd88066bb18b224644e06cc407765de4e6df51f232dd78183835b5fd78824d99b46a047ef284778104fabf6e62f9eedce78ef1b59c48090400d83c4d05f6c76b7c8c642e48a321cde26cbff1dd980af6ea77308f04e829a85b5a5a289db0b036515090cae0e0110c1343aea70fcf622de4ff10780f08527fe4048793e7a431b88a539ae99ddc1f43f0c5e0b693ea6fddf59ad8b70f37c2027727776109871e240a9893ec387a23cb2d3a7aeaba5369fce9b85ebe284d40326d971afd8d84a9653a9e4bb29376ca703e5aa875d66accd84a8e87814cdffec1d62083d64137f6b2eecd5cb1d6fe6d89ebe0b648aee6fa44696544daadadac9c8d3371860c5c48c61f86a350a4c3bed8595952f7d545f36271ada6b3bbaa116982d0d17243e1833d7e07f2cc818338883108fd3d2c43779ef8cf97486d9b216d24954e686daf975500be1ee1766bfaf60c2a2c1dfce60c8d33a0ab8220ccebf200a78ff338b62e61c47ab592ff80a94e9ff8388d744ca8f7d97ca3378cc377ed930a6098d2f1964ff554a11c2a09fbe93fcbdedfb99ae5dfabef6a93b0b9febd4910efdf4975c4de660eab9fd7a5505a822674b052007f6e86f059bd8148fb6e62f78aab130ec3a6dfad099be40bbf98b0404e21280832326879ba35732622f60ccd1c680963303423ba95344128c16364e3966d94c7ca27e3ba1fe6ea0635a53fa4805b529e904f5b18df0b31cd8f2739647b80e212734a2e6dd1d6445159631250f8d3e5a4bc70d0356ab255f88c0554465a9588124c94a286504a9d1166b64be5e24750a44e13a4eb74f59b6ee07b3932a39691f95b054589b905817dffcf6ed26968d7fcafea053a1c6d0d430320d26d6b876996ab1541166cf8607798e17455e5a10fc1e66d51ddfb95bc04447ce85268c392b1de7ddee70a3d54330dfcc16c18d4c670f6625c100db346e287e11a0912cd77546cbf55a68db077f15dbba4ec4f02610246d0cf17bb4aad92450ea2019e8a6a752cb895f0151894367ba39d37d425c569b0cc95f3635801927a13cbfd73a042794135cf0c71a47c033b389adc549fe4a2ebc4c0779658511dc152efba8f4abecc9b89f7b9c7074871ffecbe545209159b77add86a20755d0ed", 0x1000}], 0x4, &(0x7f00000041c0)=[@cred={{0x1c}}, @cred={{0x1c, 0x1, 0x2, {0x0, 0xffffffffffffffff, 0xee01}}}, @cred={{0x1c, 0x1, 0x2, {r0, 0xee00, 0xee00}}}, @rights={{0x25, 0x1, 0x1, [0xffffffffffffffff, r4, 0xffffffffffffffff, r4, 0xffffffffffffffff, 0xffffffffffffffff]}}], 0x88, 0x24008000}}, {{&(0x7f0000004280)=@file={0x1, './file0\x00'}, 0x6e, &(0x7f0000006440)=[{&(0x7f0000004300)="13417ce325cff484cc859322c8a2d325d2d4149948da1786d55472ab601b08f7ff880bbf294d878b9aae1eeaa444fa20cd6655132dc00068c3c6f80ee28ceb7846bd5086bad923d2130ecac2820cd0a7e7c6f509d12fa3c163e272cee81e8dd942796fac61e190d725ccc4b8758e29462de7f8521ed9f9c715092099d1bf8180a6c18c9fa11d329d97bf895f951ab9e511ec628f1cbb711d79c18b27f0c6b193c46fbce494578ea121219c707d44ce8adcf9f36890fefc12ee62", 0xba}, {&(0x7f00000043c0)="baf960f7f49631a113dbee65f344c7cc68ba27a1f88a299c5ce155caf2cf5212a698cd3502e77f20b0f078463b9d1a43c457660e80ef74aa9cb9d79f9dc968a7faac8c2802f72f260aca06e1c9a2e6acd6b2c8627034d1", 0x57}, {&(0x7f0000004440)="7ef295a2bde361e7378094a8c2dad33a3c4cca44912a36c65857b363c27cf35791e9fd70f6f393d89f2191f02d3bff7907a2426927a7ba1ed03ed82ca17d9c965049613e87f240331640fb3bc0a441ae9cf8eb0ac90ba9cce1a8665a949ff654e14ed3696545d39be1f4119ad305287cf26cf2e587baccfcc38e8cf24485a6e593237d661d35a6618902c2e5062bc37c165415ac00c3e3683340550e154e3c9740cc11c6f5db67cf3ad3d2a722b730df445d1efd09ca2edde90c203ab449e07e7c7e0df11f8ee9264e237e86d7caae01855eceb84a51011bbdfc986cb3d5501dbaa597be70675dcd10296f13fecfa4d3a636792d763403087d3e6973d1fac4a31c977bc9ef14a48902cd45d736bede6ec0d28c1e7d370208822d7c4220b2871dc571225a4c1acbbbaadd2be9fe7a19d36ab1b0ecd8db86ef6d39363597a11be986964924473de1753211bbbb5170722163d6dc840729c66606ea5494849abbc784f16b966be513a1cb69b32584e12782ee8f6cbe0da940f468484a25c79306913fb86401c813a5444381df12ad1ea979f8a1ee40e829064d484ff8cbb635cf85dff8c7e3941f50bcaaacaf0270f6df14bd0d90c93c8304adfd22cc25c6fcb1f8f54e7db7cfc84cae84aa99bfdcd27c7d163c076d873a47ce373b860ea2923bcc7a47eaf6a8110294df2cb97c010a63f23fdb42073cb535e8a9091dd8a3fcccb6c208ec1084312d63ff72d49b15e4d6b20810db429558cecb2afb576e74929f3338b2a1df3124d0cf3d8414fc63d0a3ff64000e3d9d117232ca2acda0949a34f173077b1894d28812187030665ba26b21ca4f382fd11df0aad7a2468db064d2f013f8789a676811fee69a93176e57d5f8144f35fcc1a1ab6bf87fcc75a17839b96bec0062b1a181df15f9387760c70d0d3382228ca8833275821bad819049b4fac25ae07533295d1c8d438bb870f7e36b7ecb0391ee3eeb3265100743a2674ac0629076f50f0f1ee6a20fbc9f2bef78a464e73304729cc5103d109cde4583b70fa093a225a32d9bd1d0fa208c39660f51208ff3eaba8c7935d4353bceca3ea2a3bf50a237e3a38570bb7cb13f90d4db1014e006f6dbb20e16701fad89e4f56252311601fbd17e7e1ceea9812e3823932591076bec3032408eccd5f1c8d1b4ed5da5fbbf7fa4fbde825b3a3ecb70386dda27ec34f24c97da065181e30161204588b94618284375a7f3771c7a7c4b8fd293c2a017f6d26971932b63ddb3caf6759a6936a982178c5d55492469caf0bb4ca36a1cd9d83e3790ef184c2fd0197bb093a47da66aca8af864873ed7fff2026a18d09fdee89ffa8f6307e2d80f532cbf685de9626f7601dfb79b18368c25c9e93950cf4e849f4f04872fec3483333180b75dc9e8fb1817e008911d2349fceffcafb18fd48a4fa97be420c8c6d7c108ebef4ae87388090b4924e28437acc4a9525fb1501adebbe751829388a2783b41cdd15e9298d6bf286192c109df895b6172788e39848936194cb55875b724c174ef0e6c7bfe14fd33c71fba8551f2d234a62d39e803fb35dae3888b7813e2c83cee30e314fdb8237afbda78251cf8e537d24e989489ae811240d2eece8bee0eebc20a466380481aa238ae17405f40846df5da9b7874479389be288017c5fd6425acbfabe6346dabc74aa85f49b28b72859d7be2ddad7788ba35cf07cecb8864c5f37e1048394550b0f875fd9afa47672825d3b792e62310226dd837688ed8045f83552550320025202e19816764954a403fb43a7f55917e4b8d63243f9fb493b0e9bf0a910508b3acc50928ab8136cfa57469ba4d7962c6f53dae34e9c8d9130f69b5f0274629eedacef4915027ce67b4e632b992960a7284399fa35de7250d1370130c315e27b7d2ea1db07901f18ad1c5109e6066b8a177699b55f6531c3075d8667ddb20e69fba4b9f053db8a3b7a44c0311ea0ad96b31906bf925ae01ee478a04659a905b2dff2e2f7c70fdc311a2105412b250b07b5a310584090830f472cb9bd55af81842720c1a62bee23535d200d3ace0d8810586cd9b2a434a13abb80d56c1fb05f0ed30aeadec814a16173658b51f283f0cafc14324d9da4ec43dddc38e0a6014fdb06e77b6fca1337f935002ee71ff287137b5104766b0387e10fbd4e331e0ea1f1c76af15a1fc3f91b6fec8b95ee879a4024310cceb01bbd5628f0ed1531cbdef63a6add9c76a75eda3fd48ba843eabe578f261fee0c6d45bffe76c43fba28eaf22538dcabcc6a7e31409c321a3e1bcadd032b60ae67650c3fa76c010f811e870c4eb9b4b1f8da218c582d489b697badbcef13ddf27a7b5f4e58475ab95aac1c901ccc35175d9af0a6360c0193de924c6747ab586a43494bf3701b07ccf10c64de3427aeb8ad5fbdb659b9f0483d8562df325fb989275a1ab712403e3e8a999fbfb006045c1473c304a7e07a6eb4baa86022d039d7c77705901da419f199f7159afe8705b65391bd33233b75e077ea7a8876e96f8cec29e98a43f10aed4a56cd438825e6f90183caa03ae76b7c1de5873da5146b7e36d85a356aa7dd902982eca54fbb90e67e54822fe8763c5643940ce11d17fe54156427a4c27526e0ab73fd006a70ce265455b1f9c3f9ba6c350330dfbb0b7b20a5b7b3b94fec9cdb3a8e9705a963cdeb668ac20696fe07b5e7173af66029acf35e766b6272f37c5b0fcc1a8b59de5cf2f4f751ca8cbb62e3e2cb4344e3a6b66af5dfebc1ed474cc4a9b11db985f976500a6261f90fd124fdc36c967c54cded0e2def12b503d011de0a3bef6e73fc500d54b19584fbe2714cef283042c8c6c596a70492a78d4836d417ca6d786315c7f0d793b81fb112e5351694fecb4e0edf4646d690f45fdce8cb8ff97ea1a9389f9b7b0f7d46ba413bc8eac27715a061d89b3db2be863110538b3c6cf45a388fe33382e839cdaae5f9c0241a4dd8c981f92e9b6aa8600c1166d267936f03c89887b8674d6d6ca4f15c36d3329768616ef72939ec36c1a7023cd86ad704f84abc559ae4aed323a5db727b62d4cecb36a6328df713d0fb0774133971b61d75513db613aabd50ab36fe9bc035ce23a9b179bc69504aa7504140eb1d0ccdbd787db05282d574113c5e1f617ad0649e10e4f6a7edb50692095500e0a60c4a68d526098fe5d85f6b7ae25c7b8b59b7f8ce7251eeca88a3ffedcc469bcbe8fbc84d0f0dde233197aac8b38eec05665421b523bb801b3a2397383ac8efe6318b7332f2fcb78ca6049cfaae50252650f2c8b10152b1c6f585c68f96e88fc6528a72272ba4cdfd0ef0c76676ab7f1835d4dd273a6257aaaa88785771b4e793b739b53c5fcf484cb0489dcbab71f1decce21be5fd282563d250d7b16dbfee969da0762f9e586808ad048c71a9128e4abdf204aa1ca62a8c634ee43dcb737babfe4f7a1e76c79ca0d28943b97133da56cd7e973a9d5f91db87d25223105def374432ce8e2a7f9010bf02347b49fbbd10204dad7873f8d1083a892d5118fafa9c09776a3784a2e20e68871d39075cb6c7cd4740c8fec30cde5c43b1ee6e6ea77b476443429ccf44e3c1ea7e8ca93f3a8e973c30abf3c578c3f32d59980ff05385b6741db7ae9a1b8a7d9c2ca7195fb6a342d7f7c800dffae56bb8c9a0dac02e2f6230514cad516006788b0ab26208357eee82cd3afdf14b64f1919844bead8f96d2935d304d02633f4e62a8397a56e9fe38b604f33b3f159f23514cfd98944d81d83b83c51e8cc390735fa782029978d96904b6168176e395cb6b8acd820c9dbab7a25c4d39ffd9ad64ad0c8f23c5439fb64c2833a06fe6281b8af94fdae81631fa3c825fd315080918f53f07247c84b279dbab3fed11a8d9fcf5c3eb7d86c427f73545e824c983c5b70dbcd33c9b665d60c832a0edb720d912398224bd1a96388deacca206b4e6b78bbcfee8ecfa3eed396b0df4cc5928952e793abfcd844c375c44a4be5c56484e480459b7a7617b23fa4494f2be4687d0911fa571a7f9f5c2fdabbd2dd180b5d334d733ac0d464b77e75b0ec3ae8c2be8ba6878d7090dd41e7aa6dfdc48cc147d0cac6a4bc39aa2e5eb044870fbcd1d9d62e59ad2f25a4d2b89abf8f7fff2bbbb93c04beb4dcdba9e84a0ec8527d043b91639df3e6a926fcb53db3be1cb4f63e28682d1f1790114d39f84c986bf91aa8435ecf48e340b58fad96b887802e8bca660b94694b1ccc6d31406127f87f878ea59f0a69cb703032252effb3988451a45de89677d0e0bc1821a0bdf529e4f55e7049b4b7846a837649ceae6a9687a68036255f2f368877163b7151559f198807e89dde00f46cc31731007e938745c69e79752e484ab7aa47c84f9cd28a73d6e82d7756562b2a1fd74ab648c29959044e067be48bcde6ec1c30a3e74abf0de5f1216e6b5921aa4c182dc2aadab92e36ffdc328e51206338c6b5abb52d391b190179a66346a4c27206969f8bbf71b17579b398f8cb422a90d8ff37173f9d7fae817746d6116bb6bfd2cded5fd89e687e6bc3420ec414690014e5e211629d306b465842ec7809ef897e776fcc5068912d0f8f6ee167ed52e0981b0de6ec3b71887eff7ada6ef290f5e9f1ea7db310c4b88fc49f172b9362fdc6c2719067ca06bdad5b15946f9799bb679246649195277fcca84111a6f3d8a37eda0b52e87195e92838e5b95cddb7ec96b903974f86f0991a973c8d5048bdb7eab4ebb37d64a1d3656ed6b4e620b7f929ba1cad1e1f22b031590944891fe18ff6e4cde0569d0c6796729e9d305d774a74fbdd6e08b50e795dadf05df929c4991fafdea1f69f4cb789e670de8b296427ad8b00f69af39da0fd82bf42debcbb74b1aae0efb6a3da2f7f8aaef0134be286c0b3bb0af457a9dce1ceea8196e6cf6d3d477eda99c161270a124bcf7f55f1abe7bf53dfd5ef5e783c101ee6a9b1b31ee82ebcf6dc0d3a6b033de91b108d91249833da9d65eb662c42ba04398f4bce39dd34ffb3cf3014004af26193fed4b95fb2047530ac1cc045e6158835abffa8e7f55fdfdfcf8bafd0c22a7889f4e7a96850149393d317fc605033cd4f0579a9251ed71b2b90ce0e7f3fb9a1a559c078efdc19b39f4c01b646304d044d84c6dccf1bc97811d7021481207a0dc0c9f4a258d9c5923777dd448c9dbcd2ced3b8d48d86e64d320d213e1661fb8bf15265eddbcb202e71283c65ea31ff15b82943d4aceffd27d2810eca85ce74d8166d08dc93be67f2a28810a82935fb6f39befa37ffb7639a05ca023d9afd503a44a24132e89bfff25994c7f860033ca19cefe38eb86092748119f00860f2e374648a6b24b9b588ba7b688d83b31f9b35b45e3b1d6a24d04b193be49ae8a4889016a4450aa107cb93d85238af80c48d0126a768d5ce459415d8cddd87079d2802003e9a88265e642c304861b8be5f310bdf7746c742835efa7fcf44a07b60cb0e3c42956f93170854cf3b55879d43dfd0cd39bbbd3fb24ea91b6953bf64a146e173e41e824362612d0aa6fe82e029628cb3b4a2982133e5177ba80dc66cc583762fac8ba56b468a7d9cb9fdbb58ad9d89db39101cd790b7d4abd6ca0fcb5808b3fbd8e03dfd660bab46f1a4befbdfd7b962354f98d3778c48484094773e9bd3989f963544abfa94d1a2bbd97b9a48eeae336e66db529779a0e8f8e07f8147731b2cc6540a3c4361890f75b79006e2b226522146e0d5649577711e42bd033dcd8b48ff41c1dd1ddfdb3f71e4c17bb78e0927fc74b347e885a52c9ab35fb9930f5c807b9814bc8e", 0x1000}, {&(0x7f0000005440)="c72c56c417bc0fabb2f2b971541a5b083e82ccbbfb484c1c6d096b60765efc606b3571e23564059d8710cf4cc717bc23005055d290a572cea1f21b7044287e56372a98a67a2a7b8d738c0577a34241fd9556ce450ba2eb819a5d0ae936c679ea93a56d179f92d27ca956b1c34362b50d6bc87cfb114f43e29cb2fff9f1435620ad8c1040185d5538c2b5b058c7de1d82480625de76ec978257d8a772980ac3c026842114fb6ea26c586bc2ca9147c6dfc4f9efdd95d3df00995b42a672c6ebc9255ecbb1815c2b44709a00fa396b330a1d3f3d5e7bbac8935bfed99f3d57380081c76bf2feac06494236407841b8e5a542ae7fbfccf1d2ab682f5c4e46dbde39f4921462f634ab4b640951744f021b8edccf8c49a78b219a16d6ac6ef90f95c396c136eb5731fcab578a748f30c1783745051e156ac57ba9e391b1d6175aef0e5cafd1195f91cb1a3776c160055a004c34bf3136ce7c2bba28fcb364dcd073895e4d142d76178263c8629f8e473145482f3320cde2aecf141118e9c8cc9731f163f266bfdae11c7c9e59f2b1489a5fc0736cf1b287f9d13a5645f913baf5e8c380cbe74f41029f4b24effada58b0866ccdecf1e697719e4ef7fdd709540fe480dc80519d7b1eaf1910b633d25d4772c193352923b934580425ad986606e4b125afdc3b1c36341dfde3f4d2512b86a07895f80607c6964c9d7f87e23b0d135ba17fbe49c7ad7a2541124381f4c8e7c3d71a74145bd6116172a06f4594d6d81290466dd66efbcdde43e1f6ac11047080b40653c473b8e279fcec1968926f0c00e91c0680d5a474ec781d96d89a5bbd878ac2bb686429bb1247b24b334ffa7a45c7788a8349f2de28deade16d087f37d8b10c2b081076c233ef6d33c215ed4491b07ea1155532e74b5725e164b1df89bb3141b8c5f6654db0be6fb9ca36dac6f196ea0c136bdc038644c75cbd9c55fbf27e194e10f2f22c843aa82fd830a1d19b19123a0490796aed47a4a9c11a6c0a1d4f48597b63ecbf014bcc10af2416b4681f4ea47642810e6d1bb9d5055f452366fa2bd5bbb208cdb674d68b666b5cee46c6fdb60d01766803a40841517483d4f2209b6f9bdf9b8d7bbe9c54eaf4bab4b1e936e52596b70155d10ca0697f000ae330d083cc5129c3613a41ba95e9693c71017c7146c220bf2cbc332c91a94a54b243989bc54dc6771f55a77ae51f753af77c1dd61d5f99d507765103c082521508219705d42bd413783eb45a4f661715fa6f7342165f41726d8b79e1c3f3d6657bd6b59cb7801bad912ee8d7b77c0cce9717e112d224883167e735301acf90da1225561c42e1e807beaf407ac0996cc88551cb2e7c860a74904c9d48bd2061e61aca4c3208e63f487eff5f8e718eb19dfb8041af195544093c9fa5bec2f8bf7574dc8c3f56fd3b5249c360b2e9c0542ee7e6c51324fcb4a819db64d065be1be25b13b3ee9ca47314b7fba2df4ba6846754cea0ed0c17fe4aa78b74d027483c2d75441e6009decb0f067a7fa4077063b12f930c0ba0028547c1452e140cc16f09b506fa82790c596d5dab4315679ebca6f53101e16373c7ecb83299296eae06391111f03131f370fa47a7e69798965b64a54e8e6e74cff9b3565935616b53d798c900c337b6cf42bb6e5aa4e27332ffd74f98dd36715bf40826afc5c172133a94585ad24977fbe09b781a3368801449d5a28bb0da6535c010e56b90ad823fd0457a917cd43ff2493d63fd7f5f5eab64f296986c62883ace8a9fa4e0c43f50186dcf3d3907a67ea3f5c7ab596ff49cbfb00c5fe89fab3301c297101f1d4f3ebb47ad0135d605162938e3c20a3c010690b7fc6d4eb77f160f615b5ba464fab7b1a1b69d281c50f9d6ff95739c24f43dfca44dc4e994a28aed382ac05084044d93c9ac5b68c8bda9cf3cbc97d0957f68afb5d0b3bc0783ef755d1165ed958aeb72afc791a09dc1fe0042aa5487831d2962b72348f716c8e8f5c5cc53484f1699a03f9575d25abf9e925aed9814cb4ad490489945720afad68f6f77a186368bbe87b11be733a38338d2145dce29aae0e84e31107630f0a910d0e812c91ef3ebd22952f73a9184053a48394f9ac5e0149a54cbb5edd393348165b7c9dddf42533510e0c94c3523e2a4e85fb9887b98404b1fb085b0500c2b2eaf0addfddc733f8576d1d6627c2b81933abf71d78ae0b7bc0740987830b25c108bb984800ac85c62edaa8248a0569ebe5e8d60baea15f2ab54ad22f84c41729502129f3a315e1cb4b37180d9043f91dedd36fb8b723945587c7ab0726e8cc47252e817206836549b4b0bc984a259acf7032c58b345383c0e52c77d687eadb5bf48a7ce1f24aecb5956d8fc41a800f493f8fc404bf84fbf794bcfd2a281725c44e553a01bad218cbade454f93c8eb165443ec1abab7eed548657de21dc997164a258a46f6f79858e7225f4301a861e4190b1890f861b7894736cfa086a80553ffed9f9384fb3133ec321ecc79258963773cd4116dbf5275520d5f78a782a77ed6ad0f0f7e49eeac7adf780a57fac8080cca282410665d87895b195d863de26042a4202b02850d20880281d1154d6fa5a64deeb704e06973c0558443eeaa29916c49fe32417e29650b1924eb5cfff2bf158acabef8aa26fadb64bfd16979af7293a074461ba9c278009f297be64874a3edab35aa225d693de4534779173b216fbb585e88fd183fefedb00865a584cea68bbedd1b6a4319ecc8fea39ce6d54a8ae2cb23bc90d0fd9d5343f72b3a6a3e1c2c81a2eb70b02d8a3c70aef80b9b4bda8cb25552084f42d948f72c0e83ba8a95178dcfdfcd7a15c1bb9f45a83b17704adadfd76bd84877502a87cc4473e067a3e65adb38a74f4605c434cc643e831f60f3e6b47698a44b11fc042847ac4a06e050eb0add38282ad6faacf0ee3a48a3d8d9f4dcf24204522fb1db5353ee0a421da97bf3bbf0e299a77553b76ea5a982f10a5d17cc9647339e84a01fd078118dce79cc0286aedabf7584bb9ed53b682b216e1f68c79b6be9ac71ad3b224e94fb43ad52124bd1fc607e7f4138a2ab98a5842ea730b6b5ebb9cc2a8fd5901a6ed9e0ce49b81972130beb449bd200b2e7f663a99e5d184cc960cda0397f7da02567286719c7ae2fca155519cef3699ac72eb06e1599c254a604c9d5473a329b654742ddb90b0998408b502c0f75948c307049ddbe5cef047c456f18939c86503b0c0342d61f23642808f09bfa596ec5e63dac893afaf6e5c9dc01e40984602c2a9a74a3df016e2e8779937679e6451043605105db3101d4d08112f85af0f1969b2cbde4f185d453f98e9966807cd9fcf45e420a480e77b7221685da932031932e0df92edf6f858ce9bc86abe319c6521f8f647b89db80d09c863a55fcc5f5cf047137eb9644792ef8f372078b0bc15f30f53de7ce7d15d0de1ce88001134eef1b3e4bd21d5e34971f5e7a21aed2c33b43ff462acc7bfa979c78160468862f00a4a60bee745d56c273c43c325f0be8f75098fac9db60e357f14216f54249d9b20e6b1c5ca4bfbb20bee3e91c1dc1516ebdd5029b3c410821d72f790134741b185ad7fb08bbd9c6331e690d6dbb2f825c9ac6efce6692b0f361c55b33932594d80402692d2b266aa712531872920290fb78042627f93109be7061c18aa2876a009bd977ded5bbff7ce9923cb13d022b0806e5069cbb5d5d1dca4ab82032c4efb96398449ce680b6c7fd28dabaa6f85fb4b38e00dfe2550829d7fbb98ad42bc5115900e04f866613a9fb7380e645ebff3e73dc4a2cc888877d8028a44d5adffacca24d9eb9da896ef76a86913c3870b8f8710c48a9e9eaf57ccabde21b407e4bd4c81179122c532ad45711fdd1a33ec2972bc6152b563cf8c1ab1f36ea6e82597df393464ddc2731dfb86fc2582ee5f57257939ac38c5a75a7d98a0e78f1addbc0489da34c5455b31b2cc37414d43526020fbe809a66d3269093ec0947ec39d0a8c4c32e089614c17a09b7df2927fdbf5c06b5707ec7ee7a10acdc2960acc59df542bbe2e03202c9494ac18dd10037149a70e5b7363ac4c07cc158aacf4dc45266150928ddbcdfc28625bbe5b27aa08ad6f710217e96dc667fa3ff0ce43e0624894e2832dfe151838fa26b7132711a3c0971aa05bc81883ae42b0d6bdbd736819b6a30c03bb19cdb800b198e24ca33dbee2ae458e6c75240900ef060255d6904e6056b3a27196e76df385169c63407d16b632c8d02edad23c65b9166fa96980dc60863b2ac6fcf6af1b41d27c1f52fe18a72307a14caf1f810fca0efc36b7cd411b0a365b822c1f1940554acbc4bb4e81ebf8ec870c74eed509442c8dd9a0336cba81bacf4f7bc959954d01e6853d4312040bf8c0a68796cb2bc1fad227301afcec82311143e830e39f495f84621fe345aca45561f213b24a179c3c2c2461b506e716ced721001f7dee5cfc666ffcf20ed2d04d88e6f6cd2244b81ef78d80f788ed8603e4ca5018479d3bc719fe6ce029c8e754f2b11ea0ff4f064f614badb1ad7e2e988da778104247668bea9dd023f878171cd7c980fbaa6cbc43ac0e9baed3e866f803e677e193eb9e8aa061dbc1db875054a1d7d21984edbf1db3ef1fa182a6b437c136801571f39dc77abe596d781a3538f7a34f64dea19596b81a0f0fc83d810e9559e39e862968edd27342475461ef94d4fa2183dbc52e86fed3b9688b13039a0f5c3f123446192146b1b5c9b6192bd460231f07e41b98aba8cebad5224b3870c6831995924227f77db076974076162e69e6fb42ae8c3020ee9f4fcbe7cf86e91aa75d5565065eed897f76d1d5f2cf206544637928bcaef17b29fcf78e5b15b0c6ea331e7dbdb2aab1675986c7f4349df053a1f123155fd1c1e6484c444577155812edb345ab57e35f64cce768bbc9920c39e38fdc67d21380c6d30695491a94e895b5a95e061b076b5617390e44fa8ee171bcefebd3ec5cce90d42466ce1a7e52c6e01b13aba4c244c582e038ad47000fd9ba3e5832ca5b74fe2673141b2648e411710775804a77d36b57bde266831f6b1a7dfcaf753f6b43a90390b7ab1592166be19f7750dbcafa4f40d02ecdebe3b8ea3e7b87fd5c78daa042923a4c54469b6d29be2335fe04cb0bccc38c4542e9cd75a29a956c51142e358dc7a25abc71a085f61482f3c70bf599edd1b7d0bc0df59f96225eb932dcb729a2e39c67ad9e7fe10dcd1e65be9586a87d0f0b8a43d6575e80fe4a3fb884c1f17256634a2555e1d88495906c64e433d1c98de8f8aae9177bd527dae1d78407c129c3de8f7aa0c30c59616e395438737dc8e1e96596938bef52e7ee16150294fc4da0268458df49318a047d179af64b3b80fded4e230d3f7177ef5a19eb161de287305e5735d4a787ea0c85cebeb4f955121eeb3b27fe02750d1b7421c3f6867f0a2ba6596e9705e2fc11e83dffdfdd2f6aef18080fc769f885668d267e9faa09e0c386d305ad1a48ffb06f25b4d737241dbabc6f754be9ead1f85fb8ccb62eda0b85010d43e843a11438c40e5a2397708cd22981ef817bd209d1d9b18ac5dfbf0278e4cb7abb6a34b1da7867da799e7cf3690cb83c1db18ef8f1d8a7116764318d9f4a340b1a6960f41340622736454888c2dc89689f3cdd2b2311d09d537383ada15d7fe1c59064c13a3e29cf50f38e92ffb6adbfefe52675721e1d2adf627075473cff266d8dcefdc0a5a0c0d679fe7305a46b224922fb22ad19dce95cdc9377c54364637b201d24bd8aa20d4a7adad9ffec2", 0x1000}], 0x4, &(0x7f0000006480)=[@cred={{0x1c}}, @rights={{0x14, 0x1, 0x1, [0xffffffffffffffff]}}, @cred={{0x1c, 0x1, 0x2, {r0, 0xee01, 0xee00}}}], 0x58, 0x800}}, {{&(0x7f0000006500)=@abs={0x0, 0x0, 0x4e22}, 0x6e, &(0x7f0000006940)=[{&(0x7f0000006580)="da7c469b554bd7fed9", 0x9}, {&(0x7f00000065c0)="2163872b26e525482e710715a42f8d4cc3ebed1e6201ba009c73601dac57528d809c71efe0cfddfb486c6683c5e0ed9a61552caac0ee9b7dd249b06ad115038f37e1fbeaf387342e22dc4e6c13adeb337b62d5816401906b9a2a0dc436677d4630cc4749b8191b14f7042331e82243efb6c282e5ef56cf5671586097232c5862cf1aad198212057edb34c429f6d223a51c8a8e24ebd0f4b20a430be39c8fb02b429d3efefb2d3b3080833dcb9e4c9ab35c6ef5f94f87ed210d0704b594c15e6c1a8f89a1fe07d7374cc4e5488dc473e7e4435f", 0xd3}, {&(0x7f00000066c0)="b306b6cbc5baa81354ef9dc9b38d74915faf335383b4f52f5c727337f1646c9af8a33772a5b49bb9e0ffcef026b7b58379bf48ac9509a9952974564bf88662c79eda5c0486abea1e206b8fa04af28bbfa64fc478550bc194d5e12b73c1b7", 0x5e}, {&(0x7f0000006740)="019c8c97c124c620fd59d4443abfb78489eacfee2598378365daae725583a3295ed665df67c31727885bf4353a6ff1ff71eed65478673e7b23e5ddc15d12b21cbcbe934956597059485343d07f446eb58812a68f3d25abd44c68ae78ad1209f6d0852a984eb42f762f1a815148aab52320cecdda6869a1a6ead045645559", 0x7e}, {&(0x7f00000067c0)="fc3e2c0fcc0f8adc9d1e25c9bcc9ad28052a352c0ae912f1a85fbbf2d0fe1c35dcc95e4f3289bdfe445562e8e3bb57ffcaabef7e407c9c1462f808e5f14e28dc5c10fca77752d004f4d3346c7d99e0f71821f1bf1b399ed930d3b57e83a995e0391cf371a5e2aec45d3c41aae348ce5915d3bde63bdfa56b576ab91cae22fee435ab39fc78af81bea33435b1bd8e3ab2297ceadd671cf91d1112de1eb70552dad4c1cec78d", 0xa5}, {&(0x7f0000006880)="c962d9983ba9eb57d0dd7a83975163ea744912983c2af19ce54ef300cfb9cbfbc057cda12defad652924170e37470aba9e80ed916ee0eb88d1c2106052293b0b2d63986b34463819add397acfc9f63f192f002b54a3a21be4bdb9111d0e7e8d6b6178e1d6e751179a92070153110fe419e200415208c1f1f8166c25858624be20b55783e05d57cf76aa1f35421562eda89d37a4eb8d86d6243d68f8b0ef0a7dfb2a1f603", 0xa4}], 0x6, &(0x7f0000006a80)=[@rights={{0x28, 0x1, 0x1, [r1, r4, r4, r2, r2, 0xffffffffffffffff]}}, @rights={{0x18, 0x1, 0x1, [r2, 0xffffffffffffffff]}}, @rights={{0x18, 0x1, 0x1, [r4, 0xffffffffffffffff]}}, @rights={{0x24, 0x1, 0x1, [r5, r5, 0xffffffffffffffff, 0xffffffffffffffff, 0xffffffffffffffff]}}, @cred={{0x1c, 0x1, 0x2, {0x0, 0xee00, 0xee00}}}, @cred={{0x1c, 0x1, 0x2, {r0, 0xee01}}}, @rights={{0x20, 0x1, 0x1, [r2, r2, 0xffffffffffffffff, r1]}}, @rights={{0x18, 0x1, 0x1, [r5, 0xffffffffffffffff]}}, @rights={{0x20, 0x1, 0x1, [0xffffffffffffffff, 0xffffffffffffffff, r2, 0xffffffffffffffff]}}], 0x118}}, {{&(0x7f0000006bc0)=@abs={0x1, 0x0, 0x4e20}, 0x6e, &(0x7f0000006cc0)=[{&(0x7f0000006c40)="51bbdbec151d36a963cf19bf652664be347a6aef9b5db9ca93b59b84315d3b5750c1c66c912012b609c033bcc39aa3008359270adb431f00b87933c54a3d246f10275102cd96cee8f679", 0x4a}], 0x1, 0x0, 0x0, 0x84}}, {{&(0x7f0000006d00)=@abs={0x1, 0x0, 0x4e24}, 0x6e, &(0x7f0000008340)=[{&(0x7f0000006d80)="fb11ba91be236856489fa00dd8a127ab88f4afd12043e12ed8a465b3845414c79d01d16dff31463f285ced0946437029e903cb90c05f30daca11c084d9b7299fa003f0329de8d778d0bceaa0b3122299876c59", 0x53}, {&(0x7f0000006e00)="b2476f91e9f94d09a95df2c3c393682531905c6fe773234eac3d1dfc1bbe7b7fb3aa700c9a2c99b58701ca7747cc28b109cbf1aae33ad080f16663919e2662ef8865be4f9a9f53a58631bc0c3e490175bae88bfa828fca441fedb51345dc978f26a91c3efc86c8afe7c4efa2200ab764c258d9937e36239b7b6e814b967790d2e5fec18ed709cd9454d997a71a6c5afbcbfa51fed8141f5f520ce0302bb8e21c5a793602ef3f235a", 0xa8}, {&(0x7f0000006ec0)="03520383e565261b35d3c173b7ddeeea298b6f5e3bf2385b1ec6195418754374dc1a9e14fac670f3c757d19c1eac6b41486a3ac7e1ece630d4f479b590a9a37ca1084b35710176456c88c32cd585fbf4090444ecceafad4f652421e7218680de2a82bd0572bdf331d0532ce37235f5ea6bfb00c23897a0d37e68dc337f39b4edfbd3974f17512f7eb7fdb9e5c0d3dc656a4fef55aeb1c9940c6fe157cb47d0d0618df02398fbd47139c45288949ec4d6a3a7b2071c5ca6f9f91ffb948667bfb1dd7933879dcef55bc6f019fe9fd1fc9d7dd5b4dafb6c83e3da48ccdf1ebe1855243c3c99007e9c7442e288b022849056", 0xf0}, {&(0x7f0000006fc0)="3bbce33845a3bab401347c89b5440045774743bf376b7d5a2ebeb7da0484b9ed88b442a07d6bf69a2e04d7efa4f3e9bf2c22d59639df77ee242f5c94432d564d645e38ebdf03eea8d36ab47b5438c1005568cb61b8600aef2bb5edff6dbd9a31289ecffd1a38727550ea29800dae9ac3685424f84cef73fcc20ecd0e748dfba200e7a095979683d880f739d2f7bcd9fa310878bffcc087ae1fa3a923b8b98b94f77ff21b413f3cd6700e6073e0559dedd82d2782867eac22f47a65cf3d2adf6a98d6df6b655a33125b32f19188993610d738adb916e16c424a41c484bccc9bf5b33a473e02f6f38ace86a09c74e4", 0xee}, {&(0x7f00000070c0)="e4c65d2dc615184cd08421aaf44a9e2b22663ceb0fe1352e3753419d9477b963f5a46e32c73384f92022329dfb2198d49ef060fe34f145091583a67d258e70524b0d1c33fba21a35a973583b3b6b7a911120972510e844827908f33c5e99b04930598ae9b817", 0x66}, {&(0x7f0000007140)="7695ac7ff1a31db0e20264a8a02e494cefdd03bfc11d168dc4ea32eef9e62c2dd813aa991ef8fe5a8d80161309c715385242eb8f2c0f9dc657945cee6720f62c637a1a61f6a0dc1eeea994f13a3d3fc94726c5c004c106f8f63788c90268acf509547de49a89bb87da76e8aaa094447afb43f9bfe7e4dd56c9103bb98616849128dbfd8499f8486fd980387ebda0c183f5b1808f63ea0d046ac6f6ffafd84ba2630607c3d49fad18ad5b6a9da86ce394a0558337e46e3627f6d776b0616ac9cdfc29e444477ed6c09b9e6852c3c70b60e0d30f172ea836a3934c26ee4ef0e5db12202352da696bbecef0f67bc88138f4c2c87d7777057a0fad94d907999967070a5f20f44cd56c2d689e2da46c194284b02cdaacc569eb616f196ee102cfed0026f461bcad49d2592e4256288928eb031d7c0793584a1bd4f1c75f8e012df671cd966f42dc906ed5b136974b973b8aaba8b7b3db624c09a780a7099fe066f22cc8b5e35ff22d5fd5f5106ffb3e5352d576170317a802dedf7f27665ba763a312896fd0f561e8cb7deb61a7bf91070dbd631f97d67ecb01c12fd641bf2ddd446ba7ae6b0c245a6aff20ab0532d61fe6ac16435ca4b0acccd49a34da17c09ce74964dd7f62a27d4416935c31a9c2bd9dbb5e84c31b541eb7847ab180d5940d09cfe59c9faa0de2e37ee195421a791d77867786056d51404d321cfcb70c941552bd166cbdc716a327e04c99a3bb3cc8d0bb49a7f498aeb0ca119b9b666128653964b64e28fb459a08dcc16d4d60270ce570a7a319f02d0094e075623ef943bfd15e5b58b7720ee95c3b6b16d747d384a7ff6509f509f226c0c7609beeaf599f6201415437a57f7ffcebaae450aacd2ab2e209cb74a47d09bb24c027ff69e16b812be920b02110a65d6b5f963b6f22bd9bf65475fffd05ffae2312484f0edf883470377d808e765ae9f06ac3c77cfc6ca68b926c6f6fcd2a536037a875089a8215f0009328f62d6c34a74b82df7aab0417e28c5e9d67467fd40e27cf15b8c0464ec5965b095c149d8e9004b22f3d755691fe81652c03951ae74d44d795f1f2c4bfdb8c7e4ad90cfe58fb8d86995f7878aaf31299a4a2364dcb1eb7c34905260695cde52dec3b16857166b004ed292933c51938c56657a47b3d9c28e85c9c510ce8f890caf6f35999be62d06cde067b7bb39327d8d02f7888f90ad0441d71e13a8bb15e86fe41de5f5329668e3f5bc89c23122e1b01fc0e6ae16b0418c6527abb2ad8d66b8822ee5062e96616508891cd6e9ea8f1b4086c2b7a4e32bf243d9d182e698dc4b7db8d73d56059a994e74a6a34dc28eb59e2da800269987462a8e2ef986f4075cc619c2cff4871a6a3b45ced588b0704aad0f90b4bb4cfb1dd87dd4f17a0525d53ff4f12fdbf6fce8ea7bfce03b2e52e318827155fbd6646715d1bb9c138adec71505dff1907f94a0a6c11d870d51fe923fb86d8d3f22f679d59fc60c10ed092fb46207a645f7ae96d0bc3c4c1f352a849415acd09eb1730d982363203abb5d770733988f91e316a03d5b9c892607f96384734a6cbda5f8878721ccd39c900e4a0e7d39f6846a374005a39b2f5d459531eacf2a871efc5ccef68c10101d961561746961646a3d85279ed5f5f2bd17cf05bb5228230d84ba5109447622bcaf75f64c2f2c967e6640a07f7c24518937282cdaa014e3b35fc4858ee86ac6b75315f90d962d66bad4ee81f2fd295d1a23ab51a496a5751c0707010851fdd1841acb826ba775677ab4a0a21004479456c16515a59fefe350f08bedd6e30f43e3b3065bda8e31105c9802ec36ec9c24554a51c5c3f7ab16050af6f53a5ef26c8716948df5067ba7f1e750fe2495e13424e6c6ef942c6f4888b2e90a12d521289584f5b045ddfe85e0e9d476e4ed8c8318410e2db058d20d63ef6c75cf59978a41fdfc96f45468ca15961f8e7f1ebc6c04b62a587d7359fbe2009ed792661ce7fdb02458e3531640f21f3b2f6189c871b399fc7adbbc2d3b26e8c34eecafa4758bc9c73e3b54ee1e5014529ab8b0ffaf653a3c88fdc4aecd3372b817be8324df6771a71c4ab095577a1c33ca4218baabe9990325b9e43444270c6143a99ebfd6da80dc3d7099acd41b8d7c1f8a1528d7cc03360c192e6f2a4aa6b6f48bf1973e3d230cd2de8cdd35f8fb99da627d864d066268a489828e57a9d3ee2d7a55e623185ca717ef86b7af9d1f75323b09248b2d0751319d95cb36e4fd05396c09875b494abc06d4955c3b4f75abd3861fb55c46f8781e32c723ea5c5540fa489089a00de7182323904a628cf8901346dce0a4ec30802c5f51d197fd1c1fe52e451acd591de5eeca75299fe390977f83deb23c2d1834c87e8033b4f2752cc342d4a9f32d1110f3ae644bcf2e4d98f09a8938da7d752d5ba185c1abb4489be9cc75848c4f73844af637cb33276ac2bdcb59a282250ca381db7547a443d6eb2a465228c8420efa779f1b58ae71ac23f0299f917cfea986978fa8bcba68c5de75540047e5874209723b45b4dd808b572670a0431075655fd782e3608085bd8118b2dd343d902c6b763ab6e9493c8865d12aa3a2f046c3be5bbe950bd3a6a4107d8428eab895e889cce902fd35fb959f153da39dee1cae505196b478ad3bcb6372b68563a91f4d4442ac63d780726f3177e6e4c4deea6fbcdc1adea65f6d73edda62393977bb70be8522db09d38f4e0a348b1f894fa41ffd8a0b29cda242dc9aba54a4f747b112c88a966d16149ed6ec01b0df57b2442b3ec15c7071afbe9ac3584a32037ad86a1c21a01a4fe731c3d71b0878e1994279cbf1be4023ad33c6326523d8419032595586d4f1b639c37ef65cb40ec3ec624e79c633cc568f9734fb10afce151d36c5d7c1fc6db71ccecb60972653bfbd1fb3cb0736ea02f85038a315a9958fba821c719a98183aeaacc977c3317d792dd6a342156a7efb0045addc0f6fda7a8d8122f12ee56b79175112c3aa82bcf0a6cbdbf4a2fb583d37eca28a2b16d4d1db1129812eee73fa61a8c5a5d5f03cc26a1b87e1ddc52acb8164508cabddcd07dd2b81879c62d27e336ee2b628d396b4667f1cb24c1aee11fec08487664e127ac28a6026c21f57650d27fea010ca1a013e3039310b51ca477269efc134a23a7f65a95c4e6251a6e2fea85ebe0a352ae6ffbb58866b8381b23cf341b9056023463aa738589676d7d0173dcb45c633d6046eb87711c41708a6a8aee04249215e01e0fd7332183a8f9b74dd30259599d898828264218947be197b656ab53d0cbaefff30a3feb13ef21d3a6312f67e6f5c17a4b7259e4d0fdfcc8eb197e3be156a35bb2cc11ae130b32d6cbc69adf5aef147793707ca70d79215d1ed2f8817bada9287e8d54e2fe8b025bdc333d8fadb59e5473060f104124ef4801f29ee58a3346a629676fe1c94be63f819ca31b74f80cd4e90d9dd46216ea624e78f503a41be5f5a4f08e9ab5f18241d846fa9c519dbf09770dac1cd86880490d89b7156a62dc3108b847bdd6f295ac9d1ab67a829670969c556286930f7f65072962910437e92927079edb9469d65318b0d863414e962fa5aa4b263c0348a22e3d8759a7b2b2dc5818101b8313d2d457f9af1f3287910461c2c348e98ac2f4a1f90987fd7ad5360fc9e95c19387a54b4f4c85bdb5fe4422790c95bd0162af4100a5782a46a0fc5a0e0cbc734eb6199ffdb7e497ccd94697f9a6975ebd8742b4a1b78a4dc3b40e8e4f0ec9b6ee9ebee4ad5db6be7b6a97b23bb3dc7509eba885f6764972905b047753a1fb892c5d29914996ed1fd62c523105d89c589b9fceb995e5d99181ca1e4e719208b2a19a85f747ab39e2e742651b2633abd4f38c5010c01e9ac099eba711b0f209a03170f9bd567e7161837897de986d6241082ababf2a5e473565213434fb4ce29b3bbf3b553328bf0cb6f7d511bf32b608a7688c35c60273c4569fbbed5a7176c1cb2531b22183f94fa48c696dfeb28c537288af873540df942d97deb9926a8e96257baac798cdaacd9abead0ec9730a294355c4a89cf841e5e0fc28eb6ac1931c84e179dd1c466bac005b1fa4d11fd0d38bf56eb880300105f5ceca340b3bced1de490c1fe4c74d24266c4690f260981174f80a144f528ac3695b69c8563a751b7727260ba8fce4a8deb80fcbacf1ef0b68f8dbeb292d55027a0bd78f0220c9cd1bb90c8b1343eb8892d94345463c12e054b77c6326dfc2e4cd89ca5df074639485294a13449909661a8f22e772b1f61bef35f118e734d71495fddb2e55968a070f7c22c4895c0596c6227fd50ed88313f9d1d412d48352f0cb1652241a98de1510db7610a57fc78da057272cc81c4efd59dfb60a5d92ea9f7d679ce4f27a9feb8ccd4271229ce8f90b3701a41fcac3cf8e1bcc1d5dc1edee4c3d511d78b72c50b6b8874fa6233c66cf43f683901d3553411f145da581e0e6d72e10a135d2c81200a93ade537233298f0614e6604fca578e0d831bb08d3714c179cd332f98222b991a434950c51040c1ad8dd2c4fbe7767e166826a111173b59cb020dd859653db17288c9931dc511ebb0a3d125a98f77445e6dae32ad81af4ca16782541fe3017f03ac29b0ed8e3e4f553bf601cce97d802dbf30998e1ba9c12ef686897e3b226918d74aafd444ad30f83ee106f1ef2596ce25c8ba62fd9750d460e167178b34ae7fd91bce0e764a4330318867c67dd19160ec362f304051695768d81ec1bc707e538d0c78cef47e181546355264bb9816478c7cdf79d25e2a4f6bfcf0f255ff7eb9710f361cdea4e6114f00403ebfc3b932ee5d5219e792f67b3140f506eef07882c135e1aed18563409c1f63b2364a9aa030701f331650c16dcfa740fed5ffd328c52be95b5ad1c36e8896b639b175716db2d041a2baf14cfa98e89458086c67f7f3746d1ccd2786797fe32db93ce123103b09099413cae0b5f4bf1ce47b6db0507e52758fc1a80b833269e2ec2168097927eb7c4ba0e799a91d922076d86094a639583d7e36ea51c0fa93786879a41b44f40067f4d6bea918774111d0befadea359490ca5eb90709419b71d79f7effc2ae2ffeb80e333c40d8e21fccb5af30adb8420df38a66ae09c3eeb8a14edaba67f6c64414fe39a6bf343abcbec7bcb04491c15d8e50098809a147ac584065fd142dc5582990d99bb483569a92e43c0af2f5383dd199797ea2da7f96d43f448c03e9d2ec8cc3e4efd00259e89f3adc317ed21630d083c1187c301df7204ce641b9f3622fdc739970f148c014dd28a682e08bd68f38e197a35337e28f5c9bb598b7c55a9065e03a455a71aa5c5f5cb3d8a6dfe9e8b3ccd92c0f59c64fee74bf96b437c2eefbc948321d8c661f21517ba824cc278b09c8c6295177bd28e17fd5676fcccea7954b990a563dec2fceda62b16941e971e3d16c27f5cf9acea915803594c418be69e452831d8266dc7007b76f39844a3dd79cf328900039feee638eb20ba1c1dbeead26789d712b859c53756c47dba1c3885ed2482aad45a9dbb0202992a01c678c68c616cf18b8b8250b8b4dfaa6e9a53f8e350c9fcc0ad3026ffe5218b6572c41d7b00ef52f5b6cb19b4729c4d4b05fdcd3a4654433587f3458bb40a9459f0dcdf665650e3cff2d1d8043d1d8cae7c3fcc7c2fa85e24cc4ffda643ab0c660f72eb111ff56674732fe4ca23dc5cb23747e7d366e4e1b67e57fc4055edcade1dc1919d8ef090acdd63d4d71f12307f558a3a8e67f1ba7f7caba39a8928452d042b6b8dd95d3e00103a9", 0x1000}, {&(0x7f0000008140)="e6a713a07367c300a25470c7c39cec94b519d183b21f7f778740c168155ff0853d7aec70ba83650bb74321949e87874e02b83c0ef8e6168db96923406c746dd816a02599bf5c52438847a9b20d369429bc87e220", 0x54}, {&(0x7f00000081c0)="64cf9ebe62b5cb5e0b5e2731e6c6466fcf586a8a9058a40a4dfb2aa5a2b473ca75e581ebd689b19fac0a5ac34bb6a785b9d2e3e8fdba8c56ae208b18c55d167a639a7ff01746f009ff", 0x49}, {&(0x7f0000008240)="2e5ed77e6f0755e8586e827d58ff9d221054d563767edb7ddea93be4572fe9043291a72fb3d9d6fd1b7242d8a52697b8b038626d0771a703061f5cf58431f2deb25fda3255202701ee22238f2be58536d2cc3c19d8c7dcbcd5f361bb891d5ae209234e5c30cdb6705e9e5f00fd1941387880aeac1d724cb0cf23767593739e01854f8c4c8ed04d90afdcd5f6a5bcff68e73a03b683971e6342e51a2fac1b294345d7bf", 0xa3}, {&(0x7f0000008300)="779204c042", 0x5}], 0xa, &(0x7f0000008680)=[@cred={{0x1c, 0x1, 0x2, {r0}}}, @cred={{0x1c, 0x1, 0x2, {0x0, 0xffffffffffffffff}}}, @rights={{0x28, 0x1, 0x1, [0xffffffffffffffff, 0xffffffffffffffff, r2, 0xffffffffffffffff, 0xffffffffffffffff, r1]}}, @cred={{0x1c, 0x1, 0x2, {0x0, 0xee01}}}, @cred={{0x1c}}, @rights={{0x2c, 0x1, 0x1, [r2, 0xffffffffffffffff, 0xffffffffffffffff, r2, r3, r3, 0xffffffffffffffff]}}, @rights={{0x14, 0x1, 0x1, [0xffffffffffffffff]}}, @rights={{0x38, 0x1, 0x1, [0xffffffffffffffff, 0xffffffffffffffff, 0xffffffffffffffff, r2, 0xffffffffffffffff, 0xffffffffffffffff, r5, r4, 0xffffffffffffffff, 0xffffffffffffffff]}}, @rights={{0x1c, 0x1, 0x1, [r5, r6, r5]}}], 0x148, 0x4000000}}, {{&(0x7f0000008800)=@abs={0x0, 0x0, 0x4e23}, 0x6e, &(0x7f0000008b40)=[{&(0x7f0000008880)="cc1a55c0db6cfa20a0b1a012e30b9dcdced1144f3789683a650edfb8fafd645d67246d41ebd07f4ac48ceed488fbcfa221acc43bf2561cdda8bb5f34d38ae5d704eef5f070bc977fb2b852fc2533cf54ec3b918bb50a5f53ecce1b69331e14f1fadfa103fc3c415be84992182d285e430d7772744a6cd8eefbdfb3ac67713a52f79cda7f0d4fc08991fc162c71a2b8178296d4e20f", 0x95}, {&(0x7f0000008940)="10cd8ca840a1b965ba4a4918fe4a3a5dd636a2413af3e78a75c23342371e0d6e4c2352695852cd3d73e3b2dbf6e226ddbc09fe835fa7417e0c71df5ec97f7e21adbc8ed1bf2196d0579754d6db585894396de5d3879ea0b5087b42ed5f5f80814980ae3a6d6cd1e8bb5fa7005af7ca6968e906a0a8149884344b15688e654345edf491861fe092735e8b24e61743f6", 0x8f}, {&(0x7f0000008a00)="79abf08a74d87666dc25b653dbf7148a42189d31ade997570be7cf10cadebc", 0x1f}, {&(0x7f0000008a40)="11037f5121457c29124c57d5c1f9599ef04d175d3b285c1ed702305098d4f4f3679783f61313e218ceac48a7b7a66fba53d6b82efa4f4323bb109dbbb2e14ed9c872be07e1863db3d8a8bd7ff71ef4497d87cf246f27e703f2882eeb0e6463d414e966e819168b86261c4f5505aef532011fa862af2441fceedc3105233325879d74", 0x82}, {&(0x7f0000008b00)="425c258afb51faf65fe82c", 0xb}], 0x5, &(0x7f0000008bc0)=[@rights={{0x14, 0x1, 0x1, [r7]}}], 0x18, 0x8800}}], 0x8, 0x1) sendmmsg(r5, &(0x7f0000000240)=[{{&(0x7f0000000180)=@x25={0x9, @remote={'\xcc\xcc\xcc\xcc\xcc\xcc\xcc\xcc\xcc\xcc\xcc\xcc\xcc\xcc', 0x0}}, 0x80, &(0x7f00000000c0)=[{&(0x7f0000000880)="13605816daf02163493b4bef45fa04487a241e8fe89fe0326666950700b1c735957fb8396e7b9859c11fff0fdd3f71ea1ee530ddd0efc986ffe0d3daff68eb0f9954fcaff13bbef6617b44d13c4fb18bee911148cb979acf9de4893214f913ec63f0006fc7678892e291d0614a235964376530b15c0d6094273c2e4cd70a19ebc1da4899b42a2b0c26d304e6ce2e3fe842826629d7009fcf92cdcebaf8b2cc6be100848ccbf513f9c3f29a1429abf7087cd63c0fe8bca730dab44635d3f88c1df9a76b84a468e3c3b9771e408171393a6974748f755b1ea9791279af73a6ee7606b4cd6c935607fa267f40ccf0f5edb6200ef65a79af173ae743bb50bdc7daef9472cbb421dfe6c505d9f9abc9f8ab138b25316b7f87afe5b0ec2115285a992f80c37a94a9ea01966089aef97d794de5fef79a12edf9f195e6f46b564f050b1034901f79ab52c7f14a23660e546b7a508bc8e6584c4e1450e0397ce8b58137ba3660a1be8a2d08aaaad7af3523b7ea9763e515d35cd4d31ee9447171f0057a157cc53a49c83acb4e57d337ae22bf735803c9944e8f29f3480550ba733c2f67fecc5da231a8336e0a14423ecda06ffb93192f928372984fd5df1deb03542dff38e0bc4045101b18f396cd085ac987fc42740cc4deef0bc37a321178b26bf14c2fe39efd0880107a424c20050fd5cccb0d7f1d13244e177f6ea72f44a167839017f853a064b38d5294d02ed8447866d662732d563a38fad559175307da511620c7f0a856c4cf616bc96ba75c6ecea75e978c52f562fc97feea2fcd60bb992f405ba96f568afcd16c428e57f9be3e19b15fc24d0d35b78b64c3c57b6feee0512f8db0e3dfc1486db25e8b2c29c2e3b9c9b1df54ef8a5e6a5f6e103fdfb0e7eaed80171c1f834ff52d943ee9544eb061f099faada30b3991c1ca2e2aae37170ecf0cac007985894d2054c34a22f6c2eebb558fdea66dc842020bee9e7452c6b45b5f831a9e5aebfa2a3266b07f3527ad91379e106e9d5271af3f2fc51adf65e373be1dbca678091a17ea4e36f747e1abda8fb249c8d5081fdf0c0f1adbfec2a137ac0e04a9de196110426141446e4c5e8c0dee346288215bbe2d481664ac3d0583d00adfb1faa21cbd8fd03594894c8a508a3c6437cc1fee0ae4dbe556cf14bc1e644c59bf88b90391246a709951b187e561699fc9cf3a140c538649a8b785180946d28d012e149e506a9cbe2739e68b64bbb2e24e5e49f852624bac41511c7ce84a7559e899756001bff7be395d2935d0eb77b12f0c7c408a1489a93fa353bc7224291a264e5d00820cee943803a3915e5ad59358c5d49e9d018e4032d778faa8f1b5319d309bd1ecade39ed49809b04bbf4499edfa2ebe181476d7216f3ba1c20efdd85a36d81dc0061367733c9fd83b7688b10a35a2fc621d3a08a9347748a9a7ec547b7009762af44e4de87b6dbd3451dca1871b766836f0604c44989b4c976cca2f7973a3394e54fa50712d343947f8ddcebda0056696efa049e8ff7b99ba34283a6cb8dc99305704e1f42b9ce0ca9d825f7d0da038723954ae1100d5429eddb409047d5d8ca8dc825e8e211d5c7b7d7328c73928eaf767bda399784f0752556309a61ec0b4c2be09a71b10f97a14749c6abce530744a308c587ad38c6a907a5acd3c2bdee983186c82687dbd041b3471364fded9c2c347885d831854d21e0f3db455a13287fc292eb702169042ac8746a5bbfc9bfa3ffcedc34ebb82f63162dc631c3cf05b5256feca26d2d12b3bbdbca0e393c899e8ee31c19f8a4a6ee4e87701379482c35126675cff6c22329e398692c244b20c821992c3a0ae30c91cb86b7afb7215a19a9da0e0816b462d84357c39cccce553787e19142fd711a7f764b48347c7bb1d50e4269890c9aa55286c7df11075d8bca64072e0dfb6ccd48dd9a22b3e966eb07bd37a981d5e5f614f8c12179125d81bbaf0f3e70bcb26a12d855c25226a55e679c89d522de6039f918fba9ad6c50ccb999ea4607730cc17df61cd5bf375e8c298b4a126aa2b5a72cbfa1a249d7640ea3d09621439ee96c64aedc27365647c292c6006af9769a3b98dd1f18c129e9a85e947d570091e93798c22e12f3f315d9cb937bb262077f153e2a8140b70987d7b6fdb003e6e798f434f65d7e2ef41934aa6d78369c4421ca9c8b97bcfc60c321fc5df669a337867ca24536a23c35d159fb966b7675ba95f7b88615159752a312eb61175c250bc0d093c810dd670a4eaa5598be68d51ceaf4c1e7f16bfb8e9c31d3b8aedd0cc081254fc15c0f96119ec02b0f58e5a5c4c740125697a2947b4ffa5a1dc1fbf31b9abf6cd19bc8b8a355f2770b44065143f056d990a541ac528d0ecd61a118552a87fbdd3bac92753b25e3d229e7f988b131097b561c14a6893ae5bfbed63b3267f6df95080031ea1fb02e8c7c068f035564a1143be1689ac8e4e7391ea049f28e670f60ef1db97aad2535c43f3eff1800299a8ed298d9e1470a5a7cd468f35f9ace181cd3c7650374f820094db5d69bb2b7eaa78c19b27c1c90357922e35068219153bb8066ed171f8932f48f39768b1c3ba14526bf926205f57549ba6290523dea090de64c56d9665858385b4db9b9421e749c7f822f16a383ed3938a4d85189c3d943495814d533bac1444a3e6ed3dee3ab08d82a8833e14256e1b42b82e098c1690ba91e3769c5c569a4341bca12b77e72f2b4a5288586f88d7a689c9703c26e7fdd24e8e9be1814520d1fdb3a24ffdfda82a51abd99c2b6f047d957e5e4f58e79e70578d00e1d7442a2e7685801186e1bd86629795437a16bcd8bba774bc5bf878979fe338f40274c83b2e3d31862b850285c88bb15cb79dedfae75366214d19780abb848114fd323e5c6f6c3a61541ead7ce76014c67739bf09f6ef965752f2c9983a34018b3df330b898ddcc7026d2a30da993806f0b7d7d771e64a086453d4636349a39577dfb118b57cc497d14318239f270360613e0f55f85f24a15236537ae9fdb1233fd82e4aa17f412c73446054eaf654759865b71f4aa3e1965a5b95f04f7a66ce053b4dfd4d3aa14d868079ef20bea58a0cd8b0cabb8030c5d398023b13921c32d4214e2638c161b3fec72057de80d4784a59e80aabfcd7fab6251f9beeb4a0df3882d1ff90cf0daabc35a0d07eb81d4b4e17de5064e36b739bd7cafd742ee22cba3a287711921bcb3c1c99283ebb9a961c4ef4be24db48fd906e859bc4fefdf64bbf4c08b7980df7932e5cfdacb06ed15c2582e2bbf2293bacf4d6f2d7f05020fc95f017f72e625eda2633588aec4e18fdab1841abc3805b2e11ce194e8413e53c367c1706610e4a21fed2b6fc3d2aea9fc25c9571b8cc6f65e96ffbfaf42a785891474d0bceeae7594ceddf949c69cdb37551512df1e762bdd70fe0bbc80d63fedb6a4658b13efdd20b90ccafe1dc7cb38a85085fed8cdf379f9e503b77981be265010c18754982e4582471cd42b8bfb6c16a86cb1122fb87c81a69bfe36618231b9e22491ad0a6ee512de7c666e892119f74962b23bf966c154149eeb611d310b7bc027c3ef612e20eca8fa2aca4691537a48103b8a5ee29bbe9be011869b2aa7e4c04896f0038cd7ae13aa67298c0ad3bf725509d8cf3861d0552668cbe7c559ec87a5b13f34199b8cd3d1c415497d268638bc27e6a280e51afad56be7b8e404a2edb257eebe3038e3a2a9209a9df5f1b061a9c4cd3131bc98f7e6f445e6acdb3a8138c456ed1a140c12e620c3081fbf481e6bc0534600685e66182d4b52dace670dadf0ac8f9cfe807da89e3df0e1bd6a2dc3c92c99341b66ef4065377545c74934a7524755e125fb32d773ed80949f1bb096b4d16abc937c30e6f7e65e897d50c0c061c3da63fe81cf56004590e7dea3ae8d62aa12af284516d623d24edcd5f8cc1c0cc713626e60461f894402eabc1827792ad04d9aaf449ee11bedf889a636ded52757c94a54a03c84ed590b40c8288f8016169b65ddd16cfef5741d1437f3b97f45e48393926ed841a73d80c9423ff3d6db6879f1964b6415bfe6e0ec1fadf852dde39a644a789de68f14487dd34f853b67e7c7c51991a0f299ffff58e9b13cdb29a44763178c73c3ece25aa9050a66415b5710bd68833992ec22d3d27ec0c89051e541e8649de614dc0fda2d8b5282cae6f55e70b9df1466e9dd90b4487edb94d3adceb92246d6b31313e0726a90a15033193db47724bae21a1b7309a914eb6c856247fe8b707579ad94c295de9363a0ded7efb7d3fd8d8cd7d6857d9d82083aa051883269351014f4ea9e8785267ecaf5d9ba8d5b5363fe990a03283bccd9aecec3fe921cf760720da7e8649f4fa390e8560f45cbfa3c3abb4fdc3df9ab4c202d21848178bc4dd36c7e96360b81556cba3f4a44e7a60dc4a2c56e8c440366b7c63d9799de3e458ee00578346767be33dc3bc53523e558af6d2a3eef6194981c2c6b739e732d3b071b2509d3185c0745b3f9dca8336cb3dc8fd4a7b3968daf17818f71ac4a3b55fea7369ff958b77df077f46627035f7351fb95f3dfd07905dab8a52696545c89340187d28265aa279f6104df8b521a2ccbf9fac0bbadecc966a6213352c0890bdaa6233a3252c77facc0cb63af5df188a3c5006f90fdec40534c6e74ee3751a52cc9c8b842e8cb45d2663a86a3995975754c692f65d0bacdd1124abbe0888e2bd7ec199fa243eb628d80387f920f4cde58596c3166b5600f0453c2ba0ec79b513c804b36bae0a839aecb40d1adc78f9370a5bb5b6c2fd79d6233cea1b8a52ec69608a4b02ba46b7c918713d747dd7d20607bd98f1f6a463ce58ba6861ad65f6a4608796a0718f114ae32c8d15170e02b317c383a41c6d2db4d2a368c6e170cad5b19109eeaf389638a80fa8107f7ae5114e58822bea6500a5ad31158b09fa14602654412c62f55b46cc1806a4028f44e233300dfbb33a1855143a867f618c6dd19ad53a3c5c6132d24bdb7df9cd6fa1bf7fd79f5b9f31b58d19201b4c84d430665b39f2dfbe37fb62749abde2ecd4cb78f095a7c00c1c35f188035f3a8e9700d89892cdc9af6720a00ea4fff3204437045f35f2248b72f58e7f0c8370b0385c68bed1b0110f91901eedc437a8e0b5527281305c9d43ce9e2d90053723ae2d7a4875b4342e192aea2923bee5bfc0c082d5fa10ccdebf77d1a4a5486a6f43e3eef2d08633e2e6e0dd6243c9aec5215129a2595e4b664b3641141d0b749490ebdb398af126f45c21c3e958c747b741525d05020879ce2ed59412ac717945f463c3c311a5dbd8a266484e69699467b96f750b32ca434745ac771e0d7351fde6d64fb69493dd4f8183be6384a20519b63cba26dee55073a52752aaeb42f6329d72bf8c32d9d724e71700bcfc6f828b828c09502faa67ffd74e95a6ecd7042338a5780b916dcdce1abe963c01c60c046c3163b068449e88986bfd8b1221ea2c0bc0f1e16682d92750f36db19b3547794fc8c298b8c5cacfffc3a6d4e5c5031b2e0b182f1f1cb48b1a081bb481487f70c93584df0f18ba9139b5f7fb4ddf6cfe48b37e0197940ae10d75a0b9a83d419b5401d96499939caf38f7e122ae7f7a8b4ee664e1a71cc9f970cec13dc81a16411d8a12e59530b7e9e1d607e72642e2d20a2dcbcd9f5d0b3414e6aeac83d9f5e71dc669db80ba97d28d0634a0f8c1db31cdb013d592d96ab4c656e76a4a8a8868fbe989578a2837e9bcaf389116fd68f68a81126bb7d8c3ffac4b600aaa935365bd72940dd4c", 0x1000}], 0x1, &(0x7f00000002c0)=[{0xc8, 0x1f5, 0x4a5, "baf6981082303aa7698457d80ca030e959270fae9cb4e4966801ba78bad8071c905ee7859067086d1a671cc4d803f1dc2bb9578f7fb361b7f93b7efffe98418c4b6dcc0975ff9a3c7d0730e17ca0e1d61ccd259f85a6606a03dd29d327fb7dd3789b89653f3042fb63badf1c3a07a983649b4ac30d906dee6d6186b409158f62203ba0db80efc61330f4db46e97d298a9c96ec104cbff3ba61c02b3a29cf3b5de5c2bcabbe68b53f4fe3939db0cc94a61b49d8ec"}], 0xc8}}], 0x1, 0x4008880) getpgid(0x0) syz_clone3(0x0, 0x0) [ 173.144088][ T4422] F2FS-fs (loop3): Disable nat_bits due to incorrect cp_ver (7767352964634106544, 8589934608) [ 173.152752][ T4422] F2FS-fs (loop3): NAT is corrupt, run fsck to fix it [ 173.154326][ T4422] F2FS-fs (loop3): Failed to initialize F2FS node manager (-22) 00:02:53 executing program 4: syz_mount_image$ext4(&(0x7f00000001c0)='ext2\x00', &(0x7f0000000040)='./file0\x00', 0x40001, 0x4, &(0x7f0000000080)=[{&(0x7f0000010000)="200000003900000003000000300000000f1d00f7000000000200000002000000008000000080000020000000dcf4655fdcf4654f0100ffff53ef010001000000dbf4655f000000000000000001000000000000000b0000000002", 0x5a, 0x400}, {&(0x7f0000010400)="02000000030000000400000030000f", 0xf, 0x1000}, {&(0x7f0000010500)="ffff000000000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff", 0x1002, 0x2000}, {&(0x7f0000012600)="ed1b00003300000000000000dcf4655fdcf4655f000000000000040008", 0x1d, 0x4200}], 0x6800408, &(0x7f0000000300)=ANY=[], 0x1) (async) timer_delete(0x0) [ 173.173845][ T4438] loop4: detected capacity change from 0 to 512 [ 173.308844][ T4440] binder: 4436:4440 ERROR: BC_REGISTER_LOOPER called without request [ 173.308880][ T4440] binder: 4440 RLIMIT_NICE not set [ 173.367297][ T4440] binder: 4436:4440 ioctl c0306201 20000040 returned -14 00:02:53 executing program 3: syz_read_part_table(0x200000, 0x1, &(0x7f0000000000)=[{&(0x7f0000000080)="0201630000000a000000ff45ac000000070082ffffff00080000fcff134000ff0300bfffffff001f00000004000000f93fd505c1d71107000000008008da55aa", 0x40, 0x1c0}]) syz_read_part_table(0x7fffffffffffffff, 0x1, &(0x7f0000000040)=[{&(0x7f00000000c0)="5375545cdbbc80c51098d268b57df470cfc96bb8fb90587ca81b7789e23b8c33983186a4455c89b72f57e9fc3fcfcf77f32732500b1427479aa1d9d623056fb73b8b0ee708a9132a832daf109417a365bec7dff359af8bab68232e0b50de75c1b62c31acfc5a0dc69c89eee6ffa1", 0x6e, 0x471f}]) [ 173.518458][ T4438] EXT2-fs (loop4): error: corrupt root inode, run e2fsck 00:02:53 executing program 5: prlimit64(0x0, 0xe, &(0x7f0000000140)={0x8, 0x8b}, 0x0) sched_setscheduler(0x0, 0x2, &(0x7f0000000080)=0x6) sched_setaffinity(0x0, 0x8, &(0x7f00000000c0)=0x5) r0 = getpid() sched_setscheduler(r0, 0x1, &(0x7f0000001700)=0x4) socketpair$unix(0x1, 0x2, 0x0, &(0x7f0000000200)={0xffffffffffffffff, 0xffffffffffffffff}) connect$unix(r1, &(0x7f000057eff8)=@abs, 0x6e) sendmmsg$unix(r2, &(0x7f00000bd000), 0x318, 0x0) recvmmsg(r1, &(0x7f00000000c0), 0x10106, 0x2, 0x0) clock_gettime(0x0, &(0x7f00000001c0)={0x0, 0x0}) utimensat(0xffffffffffffffff, &(0x7f0000000040)='./file0\x00', &(0x7f0000000280)={{0x77359400}, {r3, r4/1000+60000}}, 0x100) getpgid(r0) r5 = getpid() sched_setscheduler(r5, 0x1, &(0x7f0000000240)=0x1) sched_setattr(r5, &(0x7f0000000000)={0x38}, 0x0) openat2(0xffffffffffffffff, &(0x7f0000000180)='./file0\x00', &(0x7f00000003c0)={0x480202, 0x0, 0x5}, 0x18) connect$unix(0xffffffffffffffff, &(0x7f0000000b80)=@file={0x29ecd5f5c6164ce7, './file0\x00'}, 0x6e) r6 = openat$cgroup_ro(0xffffffffffffff9c, &(0x7f0000000080)='cgroup.controllers\x00', 0x275a, 0x0) write$binfmt_script(r6, &(0x7f0000000240)=ANY=[], 0xfea7) ioctl$FS_IOC_RESVSP(r6, 0x40305829, &(0x7f0000000100)={0x0, 0x0, 0x0, 0xd001}) prlimit64(0x0, 0xe, &(0x7f0000000140)={0x8, 0x8b}, 0x0) (async) sched_setscheduler(0x0, 0x2, &(0x7f0000000080)=0x6) (async) sched_setaffinity(0x0, 0x8, &(0x7f00000000c0)=0x5) (async) getpid() (async) sched_setscheduler(r0, 0x1, &(0x7f0000001700)=0x4) (async) socketpair$unix(0x1, 0x2, 0x0, &(0x7f0000000200)) (async) connect$unix(r1, &(0x7f000057eff8)=@abs, 0x6e) (async) sendmmsg$unix(r2, &(0x7f00000bd000), 0x318, 0x0) (async) recvmmsg(r1, &(0x7f00000000c0), 0x10106, 0x2, 0x0) (async) clock_gettime(0x0, &(0x7f00000001c0)) (async) utimensat(0xffffffffffffffff, &(0x7f0000000040)='./file0\x00', &(0x7f0000000280)={{0x77359400}, {r3, r4/1000+60000}}, 0x100) (async) getpgid(r0) (async) getpid() (async) sched_setscheduler(r5, 0x1, &(0x7f0000000240)=0x1) (async) sched_setattr(r5, &(0x7f0000000000)={0x38}, 0x0) (async) openat2(0xffffffffffffffff, &(0x7f0000000180)='./file0\x00', &(0x7f00000003c0)={0x480202, 0x0, 0x5}, 0x18) (async) connect$unix(0xffffffffffffffff, &(0x7f0000000b80)=@file={0x29ecd5f5c6164ce7, './file0\x00'}, 0x6e) (async) openat$cgroup_ro(0xffffffffffffff9c, &(0x7f0000000080)='cgroup.controllers\x00', 0x275a, 0x0) (async) write$binfmt_script(r6, &(0x7f0000000240)=ANY=[], 0xfea7) (async) ioctl$FS_IOC_RESVSP(r6, 0x40305829, &(0x7f0000000100)={0x0, 0x0, 0x0, 0xd001}) (async) [ 173.772220][ T4444] binder: 4436:4444 ioctl c0306201 20000700 returned -14 00:02:53 executing program 0: connect$inet(0xffffffffffffffff, &(0x7f0000000140)={0x2, 0x4e22, @local}, 0x10) (async) r0 = openat$binderfs(0xffffffffffffff9c, &(0x7f00000000c0)='./binderfs/binder0\x00', 0x0, 0x0) ioctl$BINDER_SET_CONTEXT_MGR_EXT(r0, 0x40046207, 0x0) (async) r1 = openat$binderfs(0xffffffffffffff9c, &(0x7f00000000c0)='./binderfs/binder0\x00', 0x0, 0x0) ioctl$BINDER_WRITE_READ(r1, 0xc0306201, &(0x7f0000000080)={0x8, 0x0, &(0x7f0000000400)=ANY=[@ANYBLOB="04630440"], 0x0, 0x0, 0x0}) r2 = dup3(r1, r0, 0x0) ioctl$BINDER_WRITE_READ(r2, 0xc0306201, &(0x7f0000000040)={0x4, 0x0, &(0x7f0000000000)=[@register_looper], 0x1, 0x7000000, &(0x7f0000000100)='9'}) (async) ioctl$BINDER_WRITE_READ(r1, 0xc0306201, &(0x7f0000000700)={0x10, 0x0, &(0x7f0000000580)=ANY=[@ANYBLOB="0e630c40"], 0x7000000, 0x0, 0x0}) (async) ioctl$FICLONERANGE(r2, 0x4020940d, &(0x7f0000000180)={{r2}, 0x589, 0xffffffff80000001, 0x10001}) 00:02:53 executing program 4: syz_mount_image$ext4(&(0x7f00000001c0)='ext2\x00', &(0x7f0000000040)='./file0\x00', 0x40001, 0x4, &(0x7f0000000080)=[{&(0x7f0000010000)="200000003900000003000000300000000f1d00f7000000000200000002000000008000000080000020000000dcf4655fdcf4654f0100ffff53ef010001000000dbf4655f000000000000000001000000000000000b0000000002", 0x5a, 0x400}, {&(0x7f0000010400)="02000000030000000400000030000f", 0xf, 0x1000}, {&(0x7f0000010500)="ffff000000000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff", 0x1002, 0x2000}, {&(0x7f0000012600)="ed1b00003300000000000000dcf4655fdcf4655f000000000000040008", 0x1d, 0x4200}], 0x6800408, &(0x7f0000000300)=ANY=[], 0x1) (async) timer_delete(0x0) [ 173.862871][ T4451] binder: 4450:4451 ERROR: BC_REGISTER_LOOPER called without request [ 173.865249][ T4452] binder: 4450:4452 ioctl c0306201 20000700 returned -14 [ 173.931237][ T4451] binder: 4451 RLIMIT_NICE not set [ 173.933009][ T4451] binder: 4450:4451 ioctl c0306201 20000040 returned -14 00:02:54 executing program 2: syz_mount_image$minix(&(0x7f0000000000), &(0x7f0000000100)='./file0\x00', 0x8094f2, 0x9, &(0x7f0000000200)=[{&(0x7f0000000700)="feffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff", 0x1f, 0x1}, {&(0x7f0000000400)="000440000100010024000000001c08108f130100"/32, 0x20, 0x20}, {&(0x7f0000010e60)="9c", 0x1, 0x7ff}, {&(0x7f0000010020)="ff00"/32, 0x20, 0x800}, {&(0x7f0000010a00)="73797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273798faea8246c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c03657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c000000000000", 0x420, 0x9800}, {&(0x7f0000010e20)='/tmp/syz-imagegen1373039678/file0/file0\x00'/64, 0x40, 0xa000}, {&(0x7f0000010e80)='2\x003\x00'/32, 0x20, 0xc400}, {&(0x7f0000000300)="73797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a7b050000007251fef995e99efb2a7273797a6b616c6c657273797a6b616c6c65797a6b616c6c657273797a6b616c6c657273000600000000000000000000000000000000000000000000000000000000000000000067f14e5d06c4de5e7328ce589af56380ec975a107da6c4e9fcf221d14a0079152205a63fcfae906fcc16e07ee8b6f822b2985d82e9064ad57da9d1b0a3147c10076a5900ac8bd111f7828f9c2ed659af52", 0xc4, 0xd000}, {&(0x7f00000004c0)="02002e000000000000000000000000001000000000000000000000000000000001002e2eff010000000000000000000000000100000000000000000000000000030066696c000080000000000000000000000000000000000000040066696c65310000000000000000000010000000000000000000000000000032307f818c5fd95556747b6d2aca4644c47984169999ac06b8f9f58914c0005c8940db8d256e92f74b0f033a40fdf743a1b368b836fc898e7800980bebb97f7346baebc9d378a544ddfd1a6bf535de88e4de9e3c3d60e7c3585c51066d9d7349be08b15c8c7ebd82f0c079ea2ed521f98cc88b20b8d08cb5", 0xf2, 0x809400}], 0x0, &(0x7f00000008c0)=ANY=[@ANYBLOB="61707072616973652c657569643d7c50d25683e4b6fd02ccb5b553c58bb51437819106ebdbb1eac3a0e7da9bd43e301bb6473535a0c8df9cf7f6a5b9a1330b4238aae1f62796f5bf2f723d1fa5910e2f66aee3073abde4504ea7fc3f66858c1090ef95bbb27beb65dead57c355b12ae216116979a2b5d1f85b70626fa7cb5908fc7b5a5413446d57389213fd53818e2a17e3c043b3e4e201809c66ee41a4654e095d6801a22bff17b4d9322f189471e6b7d5dbbd3244db68996a39d520de756f84ec940967872eabb2d8646187b3e3fbd2c4e5d47f15897b50207940ca6291cf749b732daaafed81ed79f60d51284e9cc583f7fa18e2ebd6a7d373bd3a77f2c2537995a847c80aa723455974cc2662fc9ee30dffc055766b59da22db2ff2e2735085cfdc7698379e659266", @ANYRESDEC=0x0, @ANYBLOB="2c61707072616973655f747970653d696d617369672c7365636c6162656c2c736d6c636b66737472616e736d7574653d76912c736d61636b66737472616e736d7574653d7f1259df2c6675c1bdcfa9944a3edb661db0622c726f6f74636f6e746578743d757365725f752c00", @ANYRESDEC=0x0], 0x1) (async) mount(0x0, &(0x7f0000000100)='./file0\x00', &(0x7f0000000280)='ramfs\x00', 0x0, 0x0) mount$bind(0x0, &(0x7f0000000640)='./file0\x00', 0x0, 0x20000, 0x0) (async) r0 = openat$dir(0xffffffffffffff9c, &(0x7f0000000300)='./file0\x00', 0x0, 0x0) mkdirat(r0, &(0x7f00000000c0)='./file0\x00', 0x0) (async) mount$bind(&(0x7f00000006c0)='./file0\x00', &(0x7f00000001c0)='./file0/file0\x00', 0x0, 0x65000, 0x0) [ 174.042943][ T4465] loop4: detected capacity change from 0 to 512 00:02:54 executing program 0: connect$inet(0xffffffffffffffff, &(0x7f0000000140)={0x2, 0x4e22, @local}, 0x10) r0 = openat$binderfs(0xffffffffffffff9c, &(0x7f00000000c0)='./binderfs/binder0\x00', 0x0, 0x0) ioctl$BINDER_SET_CONTEXT_MGR_EXT(r0, 0x40046207, 0x0) r1 = openat$binderfs(0xffffffffffffff9c, &(0x7f00000000c0)='./binderfs/binder0\x00', 0x0, 0x0) ioctl$BINDER_WRITE_READ(r1, 0xc0306201, &(0x7f0000000080)={0x8, 0x0, &(0x7f0000000400)=ANY=[@ANYBLOB="04630440"], 0x0, 0x0, 0x0}) r2 = dup3(r1, r0, 0x0) ioctl$BINDER_WRITE_READ(r2, 0xc0306201, &(0x7f0000000040)={0x4, 0x0, &(0x7f0000000000)=[@register_looper], 0x1, 0x7000000, &(0x7f0000000100)='9'}) ioctl$BINDER_WRITE_READ(r1, 0xc0306201, &(0x7f0000000700)={0x10, 0x0, &(0x7f0000000580)=ANY=[@ANYBLOB="0e630c40"], 0x7000000, 0x0, 0x0}) ioctl$FICLONERANGE(r2, 0x4020940d, &(0x7f0000000180)={{r2}, 0x589, 0xffffffff80000001, 0x10001}) connect$inet(0xffffffffffffffff, &(0x7f0000000140)={0x2, 0x4e22, @local}, 0x10) (async) openat$binderfs(0xffffffffffffff9c, &(0x7f00000000c0)='./binderfs/binder0\x00', 0x0, 0x0) (async) ioctl$BINDER_SET_CONTEXT_MGR_EXT(r0, 0x40046207, 0x0) (async) openat$binderfs(0xffffffffffffff9c, &(0x7f00000000c0)='./binderfs/binder0\x00', 0x0, 0x0) (async) ioctl$BINDER_WRITE_READ(r1, 0xc0306201, &(0x7f0000000080)={0x8, 0x0, &(0x7f0000000400)=ANY=[@ANYBLOB="04630440"], 0x0, 0x0, 0x0}) (async) dup3(r1, r0, 0x0) (async) ioctl$BINDER_WRITE_READ(r2, 0xc0306201, &(0x7f0000000040)={0x4, 0x0, &(0x7f0000000000)=[@register_looper], 0x1, 0x7000000, &(0x7f0000000100)='9'}) (async) ioctl$BINDER_WRITE_READ(r1, 0xc0306201, &(0x7f0000000700)={0x10, 0x0, &(0x7f0000000580)=ANY=[@ANYBLOB="0e630c40"], 0x7000000, 0x0, 0x0}) (async) ioctl$FICLONERANGE(r2, 0x4020940d, &(0x7f0000000180)={{r2}, 0x589, 0xffffffff80000001, 0x10001}) (async) [ 174.147107][ T4471] binder: 4467:4471 ERROR: BC_REGISTER_LOOPER called without request [ 174.159227][ T4471] binder: 4471 RLIMIT_NICE not set [ 174.195428][ T4477] binder: 4467:4477 ioctl c0306201 20000700 returned -14 [ 174.197270][ T4471] binder: 4467:4471 ioctl c0306201 20000040 returned -14 [ 174.209694][ T4465] EXT2-fs (loop4): error: corrupt root inode, run e2fsck 00:02:54 executing program 1: prlimit64(0x0, 0xe, &(0x7f0000000140)={0x8, 0x8b}, 0x0) (async) sched_setscheduler(0x0, 0x2, &(0x7f0000000080)=0x6) r0 = getpid() (async) socketpair$unix(0x1, 0x2, 0x0, &(0x7f0000000200)={0xffffffffffffffff, 0xffffffffffffffff}) sched_setscheduler(r0, 0x1, &(0x7f0000000100)=0x3) (async) connect$unix(r1, &(0x7f000057eff8)=@abs, 0x6e) sendmmsg$unix(r2, &(0x7f00000bd000), 0x318, 0x0) recvmmsg(r1, &(0x7f00000000c0), 0x10106, 0x2, 0x0) r3 = openat$fb0(0xffffffffffffff9c, &(0x7f0000000840), 0x0, 0x0) ioctl$FBIOPUT_VSCREENINFO(r3, 0x4601, &(0x7f0000000000)={0x20, 0x30, 0x140, 0xa0, 0x2, 0x0, 0x0, 0x0, {}, {}, {}, {}, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3}) sched_setaffinity(0x0, 0x8, &(0x7f0000000280)=0x800) (async) r4 = bpf$BPF_PROG_RAW_TRACEPOINT_LOAD(0x5, 0x0, 0x0) r5 = socket$phonet_pipe(0x23, 0x5, 0x2) (async) r6 = syz_open_procfs(r0, &(0x7f0000008640)='net/rpc\x00') (async) r7 = socket$inet_tcp(0x2, 0x1, 0x0) setsockopt$ARPT_SO_SET_REPLACE(r7, 0x0, 0x60, &(0x7f0000000440)={'filter\x00', 0x11, 0x4, 0x3f0, 0x0, 0x0, 0x200, 0x308, 0x308, 0x308, 0x7fffffe, 0x0, {[{{@arp={@remote, @broadcast, 0x0, 0x0, 0x0, 0x0, {@mac=@link_local={0x2}}, {@mac}, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 'bridge0\x00', 'erspan0\x00'}, 0xc0, 0x100}, @unspec=@RATEEST={0x40, 'RATEEST\x00', 0x0, {'syz1\x00'}}}, {{@uncond, 0xc0, 0x100}, @unspec=@RATEEST={0x40, 'RATEEST\x00', 0x0, {'syz0\x00'}}}, {{@arp={@multicast1, @initdev={0xac, 0x1e, 0x0, 0x0}, 0x0, 0x0, 0x0, 0x0, {@mac=@link_local}, {@mac=@multicast}, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 'veth0_vlan\x00', 'ipvlan1\x00'}, 0xc0, 0x108}, @unspec=@IDLETIMER={0x48, 'IDLETIMER\x00', 0x0, {0x0, 'syz0\x00'}}}], {{'\x00', 0xc0, 0xe8}, {0x28, '\x00', 0x2}}}}, 0x440) (async) sendmmsg$unix(0xffffffffffffffff, &(0x7f0000008c00)=[{{&(0x7f00000003c0)=@abs={0x1, 0x0, 0x4e20}, 0x6e, &(0x7f0000000600)=[{&(0x7f0000000440)="269a40beaa22ef9f7b82c775c5092d510d151ecf2342c4f18eeeb04b696984c7ba20baa4ae0e1f3e60626123c76398c5cc2b92a4b29c34b903ac58f59b37ce66432044856e06ec82aab6cb78d9212e273c6e09577e515768274f77f2d8c0b79c3e4ef3f8b8a6661f0456ac5f5e578389a69de6e34612e6", 0x77}, {&(0x7f00000004c0)="999c1b49f64fda4fdca8649335e0109b46", 0x11}, {&(0x7f0000000500)="ca3f9f1366658c06802d68ec415d3c37da9a28016f9f366d1b1546a98770cc73d0b030a4b6720ae9b49e94d29305ca0338146899d4ba47152ee0e63d676b48d06f7e532d5d2f7d8f989edd7a074bc45332e8bf04cb367bca845009b0e6a2357ced44b30bed8149525717f65bbd973ecd1e6721af72e335cc6603b832abe5c833ee7e2b437541fc034f864bc8e736ec69b2d6d79cd4b6649be5477029b9a3d47bd85b5622c8ccca6a8bab7d5a261824720ccefc2802bbe490e985151c4bd3c07a17ed100a79b348694dfaef580af5cef51066d8a796e2d2330b4e0037d2a8", 0xde}], 0x3, &(0x7f0000001880)=[@cred={{0x1c, 0x1, 0x2, {r0, 0x0, 0xee01}}}, @cred={{0x1c, 0x1, 0x2, {r0, 0xffffffffffffffff, 0xee00}}}, @rights={{0x14, 0x1, 0x1, [r3]}}, @cred={{0x1c, 0x1, 0x2, {0x0, 0x0, 0xffffffffffffffff}}}, @cred={{0x1c, 0x1, 0x2, {r0, 0x0, 0xee00}}}, @rights={{0x1c, 0x1, 0x1, [r5, 0xffffffffffffffff, r5]}}], 0xb8, 0x20000010}}, {{&(0x7f00000007c0)=@file={0x0, './file0\x00'}, 0x6e, &(0x7f0000002dc0)=[{&(0x7f0000001940)="cbc0fd3854da5c767fcf063246c7ce42dd659841f3d2cf87d714d1d25a5f90ce9ad3685075779e2c921e1dffbd59e26c901db4a2814cb5bbdf4a86469fca1880168a51330fce536c8078e3e645ef3a5b6e855c95f3e93be3f005ccdd12f8a5f8e5d59c00615236d0d53644a690a464ebd826f1e19b9da8bc8c8e105f98438295d3078a21f8185ed89c1a7b04460458a3504ba5d0ba879b802ab92c0939b3cd79742314c7fae9b5246b3d9f596b22", 0xae}, {&(0x7f0000001a00)="e98006328214823844f36b8db1015ebe85c89c", 0x13}, {&(0x7f0000001a40)="9c7f29ec8187cfb4250401cd0a60c08262676b307573d5b7d05ab67a26ee627fdebffc11074fc39d42017b23b8a9bbfd9bf164f4321d3f4d2dab9b86169d146845abc8c92beaa01c68f8211fc5e5961106a4285ad1ee74f52f13f3882e2fc200eb3d89cbe8f87270b194d24d9817e74f2eaf249049cf9be513aafd912c4a6a8c8fd08c8f6a", 0x85}, {&(0x7f0000001b00)="813bd9d012ad517f5d0892d4415707a0444150e70fdada66574dafbde63a0c1415bdd78f3e426078feee2e544f24c5300da642357786e712936f8de9aa7171e7a0541750cd8893f00b47bd5cbfe7771c8fd3ef8cb977130b06a91ccb3a0096e2040a97b307c8ac9480af8cef79961ff4461b48dc01a10b91be1f8da4cf144910bc5b8f2840c45da231534473435a48647d99db4194d7aceae1c76642ac4f1023eb9c60f50d3a4b479bfcc71f574d84ddbc28f60417204cda9ab545266c2d4c27f37d", 0xc2}, {&(0x7f0000001c00)="f30fcdc7db0f3088d2cd49ceda3679f177a072becaf0e18e104343143e793c60022e71bf59f6ea82a12284e7fca7029c383209cc2dc03e6ba929b6735f0b232cf79c87dcfa906cfab287108e41381224ec09c8ff2d0ec51b08254a7daad991dbe2a9613d6b1e811846cbdbaee8252805b5e18d0a1c0b2e11a90731c12a5ae4b7c43ca2f1def5d4897589f1fd2aa64a609cdbff71842ba4a1af21d38b14308480a2b2f7fc0b75f9de32a58fc8daa698155aff", 0xb2}, {&(0x7f0000001cc0)="f432801efa0acc6c0d2a779f4ac81e4d2fed3d1396dee3c4e6b0205922363f4cce49b947b3ebb5c83eabfc1b722c159af4707c601d8a970eb128eff7f070b3d99b208b7addc9f0a5a8fc379a34cf13dfa9b0b41e2faae5784576c0e079ab4df1c790b85787f34ecfa740dab1f903d929fb665564c7149dcbb89f2bc3820c30bc6bfd3a453f6586621f5fab5736cefa3121f35baaf657620ee622c14160e132a5c3bb579bceef09af61fef7bbfe106c2787e0b48ffe555e", 0xb7}, {&(0x7f0000001d80)="c19de2949fc737077a8ab67c6f8036bd40ed04103d2fac55fdad8e1adbbebc872f2150cb737d6e60aaeb370b2cd7fbb8f7b21b390803586dfba94f6614dbfc405e5a090944abc95c34eb46bb4c9f69e5db76d3fe6b980b4457454e08b00fa285b05fb1dd38ac37da5faefa3733fa15b439b34a2e7dfca88e30306442bfa455f723102778d531652e70134322942fc2b9f09b8b71203fc915b6aa6e24e53882aa9e422cf3eea08378c4fe2eeb0575a1863a1d83abff91640aeb00bc048c29113b17869cdaca406ca8b56587b2b1fdc0c6da770b1e08f8dbc24abe22fb8d7c66377ff832d18340588e21a7d2e9d43b7f9816d00f28bc42d54b8e25e49cc940295275972dbcdb5d0915f0f8d31293d7ad930aef0ea2ee95b1b9a89d0f9d781782d2f672f6d13dfe6d18fe2763017ae7e2e97fcca92cc504ea681231fcc54c65e920a5017a1b6616c9747521f3cd10ee6dd82208bc4775632de1a2ffc6f5a472c76f9abc04de1b77c61ded5e760f320bf35949ec02a3bb2e80c04fe99ff861da45755015b3bbb2a9a14a3e5204ef57ef29d69ad50823844b2b436115a20bfc3bc7d813f018f52814724933b1b53a91f262fa4ae80b4b401e8ec08b5bdc12afec26c2df5d53c2f7cedb1e529eec71cdcad50e568ab3b174beb0e808d3ef1fc16225afbdcae7bef7a418673c288712a136799ed2b4c745b02cf00cac5051b7621ab13f78907c5c1984d38da21618336c708004036f9a07e6d6c35e7ab70d70de4c76d9578dfc3f5e5992ecfee702950098762e2a2c40f1035ff1c8c2f47ec510600aa32bdfaddcd288c04103e0200675ad64e0dca412e742eef77d047377513e43f62f76049c5b0eac6aa76c587c3675da2f085c9fcd410dc7ccc4ca7c7952ceef92237b9ab87620298e2bac87f4cccf5d933d276c4fbbbf0b169cf38eb818ca54308830a3df4cce4ea75f2ea8d1efaa6620a24ee6ee848e3359c98f82b9654933781359fbc643f777f8ed6f8592100cc4a05f76298bd1bfa05d0b4fb6e1ab1623c1f81e7d0288e2daed20fc4bf5844e841b164b493c08fdc1b9cf12aa4d6d4b23e118e1fea7b6e633a4b50adb3c572d04a0ec5dfb3b7ced7e8ebe8d5f1aa55d7dab988a9f496547537e79c4016abe6e9e12505162ab04373a1bddaa21e2901267d0f6265cfec4315bed136f94de530190f921743a086a1fa7d44e67e87de9469fffda780960ed454c04e775d7860a29ecd6011e84a78bf0c06613457bf6f54df8ad257a52710b3f7bdfcaeb2e7ef43ab1d911ef24c77d7a0b92a05ca94d4032b97e393fa287b5d2887f8cbee75cc907382d5290edeb55b0fc2f495ff59d766172d5bb5f52c40afb555146280691ec703d8cc1005b9e8272783848d60e7ef4eb523af0752ae43d7b60ea9b5d53a5399b3ff95bce26a187d30e1e4e369e56f2bf165c2e07643f641c6f0bec81c7e5de5fad1d2b01ec4ae7d475f43011e7edeb4353c67f49b0be334ac89ce05d79d0e870328b02223e50be23f73c864cb3202b20944ecf1b3821a3a950a15806323484c78c05a2aaeea2aef022689a64c14c416eb3cf72b1f19621eef2347664801be95ac7a30349131147c408aa7e9f824764569fc62d8f1ac405e483ac65fa4710f68dc326d752bb43746a3143a2bf6af48e54445504f19d0199063a4c95817db0c3ee96995add518acaa4c905830035399a0cfd67a3572d48f9021ba49ba2db2c1351917a315a2d94d1d1c7191cc2a15860dc0360075cb8d1bfac00a4e5d0cbdb4d527f8f625cc4e5a34991fdde29166b708ecbc72affad7370d57a6e4df6078e0158e0b9ab14f6e8cd9875399a6e3b2c2e11d8c17727c830415fcc6363b6a3f8f9b0e3b33da9d5827dd3a7d4eb963f25e70c322aaa8025c63399101738d241386fb03cab9a1857401e64621fb403539f7fa7a8a4e6a151a488e195d77375a0187a450ea02c6eed6d84a07db0c2d67f25786706602ea39278589b42816e7f0941b60369f017903a1ffc4000615686ddd8235d5dba4c34507f75d05844b3379dbdf51e4e65c93ff9072040da89b37dff66f762ee7112643e3fcf16a8b17b5a86406287e2ff8628feb839ba682ee91798d0790bfeb6f584cc38d44db192044a40959211b614502c23354bca3ea1008e1d0c0e06d0b8ce04e47ab82cc91dbbc585df72a8bb1e5717ea03246c04c4cd43947ef0742e9b19fdd900e422e9bc61a000289d6c9e99c1d2c64aa2ba971539723498e34cead429678e13fdddbe43323e3c78c127058ef8d122ad9a42b75f4dd72833f7860c6bb2fe58bb5d8e704fa17be932ff2dc5d3a6d2eb3978fdd6c6e85a628c5ccd0c8ee9dd2c20b84d3c5d0e3ca66895abf208836cf4519c50d7c9ce22a035624a51380c50b1dec84de2596889ba619faf6200643bd6fe709739f2a87584df2ca9eec017bbd51bf6127551ee3399e8c0bf06f2ba25758603d8c12650fea2eb97024e108fa0ec049cbd66ce2831288e5e3d31d609b1c741a3059154516e3ecfead766ba06ed2ebd3b8617d3227d3fe1faa5a02a96208eae1e82314c1df1ff20ec70105e758460e4053f10a066a86fa7cf81ef60f64692abd2ab3b057e03f96104a0cda6f679a486f7a35e7ce5054e81ea63db4c31ed4d325c8fda9c6c49aaac068dee308da645928215b0055555652a8cd83fb780a9e72554d3c80abedca81844d7ee3cfb6e032d9845603a7c8c525c3c40814937bf60a9f4602127f44d618e74c7d69d89a83327eaac67109b0f5a10e59ef5eb516391d0422b6c965dbb283a09475448a1b6df5fe0066eac67498efe243a491b2e042959bb73c337276d59124fc71f35954c9dcd21465930a6593f59ee00f365a1c9c0e9449d1ebd5406094becbbf77e0b59313c11fb4a448cef2c34ee393d30f9fff44efe150fcb5121e43644e916b28fd4605ec4c733ada7a43162a8cf709686743d9a9e6e6dfab7ff78e9b3ce37e4e4c37e66f8843e4050bf998c73bab51dd21aaff05035445f0b03115c88bb1baa511567055e25ac9662f2281d55c1ab464878a969ff87d97d48ead3559ebb7458b559a9cb483d8f2aabbf044684e271af0fc1b9a6e8305a9aacb02436a82715aab0c5d25d87b2a3536530c523b57a55cf6fab55cd6aa20bb5e7c4435296f209a8eaa91fef5fb37a0e1146ee2767cf1bfa1b8def585cb7cc5706cad5eacc30c833f85a25e1a6f7d1d174ced6efbd42cfa2a1899e391df9102752478ea1a44039ffb653a7893627f686460f68a9fa4ebc5cbae258a1d44beef3ba10ce58dddcf954eccf1beb617367fdffea0aa5f54adbd0d8045a643685ed83ab4a8fc964f6dfff377378d957053c962bdf8ed627e5a54096ac04226b89d88faf8e8f8464da75bb0a00d7ea76680967dd4be40b0228e6b1cbe0c386888f72ca886213148d651f20cba95caea910284025b891a3d68d1b6b9f48047b7784430e2da52009e651896728b347b04947ac409ffb320f9a84744697fdf82fec624f109c10ddccb0a4aae375b43dd8e21aa7610b4deed02ad6aa8951d1cf73c227bd38eaba5e32ff550b17691fba889ebdf149e45926112b4d7900f258041942c81fc61fd65c4ab793e0594bd5b188e68509ab37ad577440992c8b634723eab4a3bd53426f4972f04e975e129a4139a842f7563c480ef39326f727591529d75f24ab8e6b58fc5a6c1480711d76d27caa90b694ddeaa37ec9585c81c9f75cbd7775c2919d352b7a921f64b09ac7e9161db6ce647fdbc27ebda10a6fbbff4fd50086335b89c18128f518db75862b3e884dbc3d196fbac4bbe3fefba6940843fb1d160ae03f9ea145710e72002e1eaefc00b5c494cec73193c49c6f5c81d7a398e68ea6b843b057bbcab52ec55cff03565499f9b202c52d328e5beaf35b1f1e3d60bc97f04bdfa38d8b9f2e60e3fb9d17b1525169f7ee00e21570041bd922c5a2b8f9589efa0890ce3940f72ac6c4b68ccce51c84f7e5f911c50d634f04a1a21b2bf23bf1707b00ee66494216358236829e2fb1cf9a3097b0410c49b3eb02f29ef0759afe201233db245b5af0827ef7d0cf30f6205c4148ba9c3cb721fbbbafef75bab808dc6c8c47bf035712d4718192e46efc09a005de25c84f7b1e92f369bd610ca988754e349f5bb6f6f63fd7ebb0496783324593677773d0e9b379e08f750e3b40e864ff8328b1c3fe32190de29a0059ad36c0cd75c82a164f08ad32401a86d84473225e4b956e3a587a5d59c21a01eff5840328bc5ae4b067faa620868ce6c764811415dabb98ae7cb69cb8cec74d88fcbda8dd82791aa70acea8e776149cf5607f0e18f8e7349ed82dce21d30fe96539f7992c182a52ad878f28bef3a2ee1bf5b994d4b1a9b570f0d80442798535d354463e5e4b2ac410d393e804f6f9aa5b689b89f86396064d24b2d2a58a905ce2be7e5746245e289e5c4c4987983998eef615f6b88cff4e7c9502f7ac4496757e66efb634e0cce1eb8eba59f85c3636a2c23e79ea77cf7460ad8eb8d42d11005862e6d18441c7c652de500c68ae4ad5f5f6ef8b42eed38cf34106294b5c3a05c4d01dd3087d4d800d45c82a75cb5a10c2ea4a6beb4707e88ec7eacf96495ed0543dc44fe5dc083778a9137aac2fc3a0344b7e468550b172bf25ee25e4a8d34823e0d33bd8d1beb9945411bfdfb3ebde57683c5b4a23f3888da838ec56e477c960892f4640acbc83a4fb590572b9b99d901d7da8f0e8e2e08172e38e2c14483ce8cef87ec2073f05a0634cf8227fd941cdc3a026e1ecd7caf370b68e851ca84bfcc55f8a8adb79070a68fdd59848428ab480b887e8155d9f20c82211ff13641eb573eefaefca510cb1cc9aa39ac86f89b06fd76bb62246162401c33d907afa65e7725c6f109bb9dcbe139890ab721e869a5682f8045f6523204361ce03387d7bcc155230d3fc8a0f43153cc2d93bd2f5bdcdac895f503d50d8201939ac08b0c80ccc8b504911105663ad59de3854aa6a7addb212848537bf2d6fe9ea655d782a24679012adfcc4825b739fcfb559b70f880c45d2be018382b8c76d1ea27ab3448c8d280ad0134d0ad795556b2d706b4f0ed4ac8d92d51af7db1e58b3c88cbaa9921521a5654acc92487b180315b8fb0fa069e20e597d9fee8156ff05c6eacc623e8a6c7ea85b067ed4c1189e0599b89eac7bd37783710f17df38371ea8a732a8c3ac19e59f12670a26aff1e105a20280146e08c2ac997fc1fc8ad0dc1d1ffe42ddf7ae36b6e1e657eab8eac834892556cd83fc54d3a7a1060071e63e1b3cce004519aec81c6387047f6d8ce8673cd16b72e10b0bbdd24b07a5460ce90670b0505cad83e06a2c3128de93791296e23e528b4b4575c719867004f1652d0b4a5403cc61ae36544b4c8a9e7d7c5199af326d2113f3d3008089b7c3629dea2bf05f7cdfa6df4d500c8291c780f1e3e9fc8a762fd6f91452d8fbdcd1c265ecb48b40bf8cd22492699b0c93a0ef9804e28b2deff4115ba7f616bd8bb836a1fdace9011ef074a5bbdf173634429216dfb8b2c924ca7be6b7a19ce493260dae6e837c621927dbc2132340f5b412383daad86244c2c540550acd81f3e87d093e1df64edfea4e0dedcac9ec9e1f244982f35cf761cc067d1d8f228dabd9c7a1476fe5dcd5211b2d0e86304caeab6ffd467e865ec68280fda096dd7a02a7cca27e8cfccb5b86de60dcfbd50edffcd33fe9a6b276f961c033183a03b043562aa2d00a8c914826c5e7bb551081f544849c8210a029d1ef5a4e5ab395ba6e6cceff4c7f", 0x1000}, {&(0x7f0000002d80)="ff837344c7d08b90cccc00247725fee51c498c303f9d8d5c5ab1e1ba9eec99c59642ba264225622f5f89", 0x2a}], 0x8, &(0x7f0000002e40)=[@rights={{0x18, 0x1, 0x1, [0xffffffffffffffff, 0xffffffffffffffff]}}], 0x18, 0x810}}, {{&(0x7f0000002e80)=@abs={0x0, 0x0, 0x4e24}, 0x6e, &(0x7f0000004100)=[{&(0x7f0000002f00)="68000d2b520b2e044496cfff6ef74fb2cb30a81e6572adbaeaca7cac4ecd47434bd253f6746e38ea7061a6f5bb5d18f4242abed2b0e55c5484346cc0394ae6dcc9c1506bbfffbe2f9e407673db8a3b2129c783ca0435d2309bb4009a54c70c036087b5f236b0e11d409305f745b267158bd88b42c5fab7c0e1c1367298a512fe36fcfb21c5fb66223828a3275fe99f34b07bc44b928ba66fdc2829c6fb796d7ab31fe04ff2693e44b57e42", 0xab}, {&(0x7f0000002fc0)="250b36d14ea801833eff88ad87e085c2fdc8e489284b800224c8e1119e9a8f696a722362c5acf52b95592da1cc98f94589fb3dafe80da552cb147dfffcdbc10a9992ebcf476840c1f13f15b42548adfcb7dfc3555190be72dc2bf557574665da93eea6549150a2575e110826a9983ef122f4225241a68bb111fb455aced9a06e6531f9d1269461b5c5d292657b77854fb035080c16b005e5e2ed1384", 0x9c}, {&(0x7f0000003080)="7cee90bb1f7834196c441bb66ec0d80b133e34d732deddd8e4810741ea532fc8f501aa725938a75bdc09be878a93ae79dd14d36f38e6fbc64b932e06600609761c8b835d8946a8ffba9a5c11d23339e73357c65eae6d765f93d9a7b9032fde793ccfc09aa4adf0d124da189623", 0x6d}, {&(0x7f0000003100)="850e6c740e9ddad48d64714cd07ab0987d692f7fe1b59fdb0012089d1b7be325ee053b44db920089a057508378aad2c44f47197eea0b3879a3b765323cd585dbe611b5dbc9429337c3e5dfda8a9acd43816ab13329330404b7bef50039934f28bf346f95447ed9b15496447bd0ba87956f06bb671ac97d9882e33180202597be6b4c41e8c07ff1bbf27139c0cbb724f5a708600030ce43d9be138a97af36ef2502275691c84acb40487188b1856e2fd05ac60a658051444f859e6bd1be97a2fd0f384c7dc54fad1693c7791f2d804e0b91d238fd2e0a97e0229f1762732140545cf95544adf405a8bdea399d88460ec32255818ee17971ac32c4755cba9d83a686402f485097e4a0b3411aac9b1a27dd209b9944ff5162d58b4e453283421256ab7ba02c7b027b9b42234a314042dacdc422b5b60826258c300f3379ad3fa54b31c9fa385f39fda2b7e76ce475c5f32100f248872a72431675c26e8c626b208f404a4f3a5b75b407287fa0069ed423b8923258d25af1730546aec4e54768b3cd1f6b446a4f286ecf649661307dfce6a158fe38113028bfb3ad3186ede6136420ad86cbb551c08cb6b6e908e1eff59ccab9f0ceab2319ed229f5a7aae5a1eac20f24ee85da626dcf56181e3c59f9738106241311ea35ab163dc6559de9aa5059ebbc7db4514de107cc210b29c1b6e8fbc42edb574bde20e72edd8a0a75e61512202572cb36cbf52552d39055fafe96578a831b28981f7f2c1a971c9a440499405f2f30ad12bfa17ad69ba54a6388cb82fe12ed82973230135359f351d647a290e248b8164247f86b965d7c937a88cb9e21af2649fe64f0b227cd07d8fc6a07e79306c6656250546d17be60e3e0612049df970c930f0fb50b419311dbc8182f911bece7733655b7b135d97323d901a2c021438e92f7587a21186cac99d0603d7cdb20dda0153c35f82998c0c1188b357e68b5ebaf4e856c54375abea42753e1d5bff29861229fcca41b9e3d54a69e2b31c27adb5032623bf5ed9920204eb3756a45da329f19d9515a3d515262495bf9aada61bc70c1358b8ce904ca862d20b9392e3997e7dbf882257e3758a26168d31abe80dbcac04b10fd8f4980bc3f651e775b1f5ae77d82e0e86882290f6248f5526d82bf138dcc3db394c811cc7c778e015293673851e78ccbf1f6f3dbd63733e4c63a51963de952bb87dda3483d42b323f224a3ab436cbf0be64967d19aaee7e9f14c9b166a787dad21fc01992811968af18999c44326b9692d864625dff5c4fbe3474857f598ae8ac239110df7c35655ecc0f714868732959f9f3ae3e62f924d8bffb94057397dad54507196e7da8439830da9916699c5dedc315b1881798f7b08e57fbe1049d0211f07dc91db31cafd2876b17052b95f323f53bc37f00d1d9aea295b45a1a5d48c2d55b020c38fadf473472d119cd9f0e6eb8992e97576ed64c83b144a197acaac1b15d24e544c3ae23fad16a62d3e1a77059d75eab5b2f6249b6e21352d18992eaece2012b9c2a2d10edb4700617ed409e4aff1d383557342302deab30682cebb997c0179b1eb59640a38f59862230eb58f1833ae36d39a4db70d4d3bbab298c992f2d3bbd633ef470931e9bdc61be35438c7367511e3a4849def1c30f6834a1cc320d82c7d7286a734ab5d8a9ffdf444e83edc8b86b35187f5030af58987495a52a778275dfe07255442651ba0aba6856bc5445208181463c08fa0a8911ba51771fe0d1330a10a9b57e058a613d80b15fa822ba5937e01fc40b719a8d8ccea77aedbed8c982d89f8cbc7c97081e7adfe14ee16d8bc08fe06ba6ee66b96f92e38319a2dca3d575cad57609c46d9e62ee64a586a88dc8f8dfd5d1b0d49086923f81035cdb49e2b2d3bfede0d4b1e7e62c67ff120697ea36d7d42cb5c0845ed0bcd1eaf261ef43c9e918bc815c6bb98a83ce2f22e72d294f617e4d5f3c5e373108dff1fd46313554af56d01f4caceabaaf15bcc0245f4cb864cd9b845778a03cf882c5a83b2fcaff4f71805277e18834f3c13b6fcae63a1675cd196319b73e2b98c129b7709ce49e753aca8be4e6238832fa3ca7902c635d7f861ef68cf842e58c8816d5e6c739e9315fd6a53f3df4a74d29dc813ed0905acfdd290385e4ec252cd4f0b801378f9c3eebd37cba0301b627a16d9bfd3bc3a7b05f8751810aa0f94f25e86850ea33032711453f04d056cd7fa698cb2bf33ccd26592d71eac90ba073dfe16fa35baa77cb6741e8b500267ab534bcc6dcdc1bbc607555a23aee0e2fa902c3021f3f91ca7e0b46fdce8d246c3e756a1989b95e1a166cca0022f317644c342c53072cf1d7735b50b8c2103fdfa262b74fa8a260989d6538e3721e357ca49bf7bdebc08a7ac952810c8a6f65e0da4282e2e17186ff2352502c82df0e74ed8b81520ae89bd056195d72ea3be82a848a44639bddd68979e60f9e47900fb02262277764f36b58ce12a5bad3edb7772918fb7e2705028233105099b5a77295737f365e4816f9fbcd199302ac85c33074b0c1b8716d6ca71c8f1c82d45278975c5218f011dc1c35fcf585d80b8cc4094f0b7a2e88d26c7a40300c50c8168ba8459f876aff3604e683a55eb7d32749bc001c019cc8da3cca3cd6d9dc7642cecef4a2f394905eb5ba481df2ecab5968ee11f7e3308ddfce723524faadb73e1f07ef581847bd5f2f28ef8c758f6ec15506c8f2bbd4e1cf24d1ad440b254849a27e60a5be93988b5434578b450d95590562e3a4aefe54d6f6624ef5074291e83f22b1c534e4d1253b7018dfd3ac973c6a91421cad697f3438fd4fa4799ad0226df00a75878b95d13185df49055c4a324abec5de224bd7b1accf256a97fd32732aaffaeec137adf20552f4b462c77a3edc6556aeef0145832c6fc8e67dacbaebb05cf29d683255560be2e2e61b0069f8dbab9198f9a91d743a9bbc1beb12d14d71519166e160f5c2bb9ed916d64b8ebcbdd8d12220c53b8f90d3c3ada9e49cbf4c7591f0d503d458767ab6105393e078f8f66f623ef0d053066519cf6e74f74b52b814f960341bc1e3f6847b63ff7d0d0c9fae8823433afa2d56811cfe5f587962c9e5aa615e308c47ef38ee2dc1266fc357b31c6c9a6fb447b5aaad2d7ffca489ae64a6a7cd3de6a0756e94f3d5d0b6547e971cdfbe9e303f51dce2e0f6a0afa0b6c66e70b595710bac58a05c3caa10010f53c2c52f2ef669cfea182d777a7faeef5abd9c0e0b612b7521a677226d985305f27dd0a2a834f128a445e1e5a788b2caf1d700f9e9e0548388265967e8a21634e63701040f2bdf85c8f285639078a8fd0db8105e9d88cd09ae62d5beff88c59a698de40866f745efae29af8cf200513158088069db358a5eed57b0566960f0c12653a946714100920ad29328e6580f5548875350cdec89035b9ea87a00bc54a2c48e27e906873b232790cb2b1509b6513f36f2227a3ee0b0fbe0d4d187a13562e5e6472a386c5683c612caa403f43db8faa6b1fcf9246e8fd39c9ad8d965939aa648d734ad0c58d6996841aa14f0be44d6b0639d1ecd592ede52714eb7f6b568a881435284b942b8f064c5a5854d8e61b512555eba832ac15a2f26c3d17fe1929309bcf0e402c3796a29e9080badba04cb2661a2c7e3a4090877f17821111af5e79e40802d22dea42701c12a89569321a96dc297d541b1bfcece4ecf95da376edb2f03e70f4958f273466008322a38c0882ac492fb6b493aa310f12acbcf66a7e04709c6ed08a453456a046a4219bce25e8e85ff9c7c23e37926d3fc21c103a0ee423070c40888461f47b179c7710de508a5ee1dabc225153afddb5ae7d3e2877360fb2eb20a12a45da4c47091d417c753baea1b82afe70d941aa5aa1cfcebac1b3997814f008a875f411191242c1da793067cf2f69103dc51fd67bfb820906cccf9f39d974b23db4bdcb2c9c71abf9b130ae073decca97ba71e26eb1549a4427d22adc4120138d46f88af22675a2e46393ad6f9d78577310e5dffb9bf5f2b5221aae500d2063580ece86e9228c1c7e1645754d6f139ce3644843d6c3a8a66e6e36f9cf18d3f109cd8fc45c94f43ca912c783e0f483bbe7a99ea68cea0852f2a3d59cd6dc6ec93ee7f84f598b37e99577fe141f3a6418b2d7a9ed1ed0d584da2196092952a7c02ebd5fe896374c9bf1058fea1cdf8921137a8f506b0028d0c7773edae5515f1b2d43fea8ace5a39043b8ff4c9d7633c69fffb0dfa2ed081953d1afd015b5c8342f1df27438c032b5134346e89656dd904e52607bc114e79cee235bbef837a32b42a6c1d287cc96e72cfa2bf1c6edc77fb1fbb1fae396bfd7da5815a3419df3550708d71c229e052029fe92e1ea6e980910c7109618987faf5d48e106f84062f5c119a500813aa7da40202844703ce2b3513d35d362588de2a7063a8aad98f33f2bf9b092ac3b9c9eb1cf938cd5774b7016bccfebf174930d65d9be86923120cb529a382f3737b5b8afa519ffb94506af69b6571fd17a9cd7380f6c0616f1584e5b32e3bc95b43a07af70fdcf768d7dc3cd0b923ce1e3eac379b405ce5b1175184847d09fd38db3a4d95a23780aac05f2b56e43014559dc0e0e48299bab6df0890ae6900783d478c64f3cca0fc9dd88066bb18b224644e06cc407765de4e6df51f232dd78183835b5fd78824d99b46a047ef284778104fabf6e62f9eedce78ef1b59c48090400d83c4d05f6c76b7c8c642e48a321cde26cbff1dd980af6ea77308f04e829a85b5a5a289db0b036515090cae0e0110c1343aea70fcf622de4ff10780f08527fe4048793e7a431b88a539ae99ddc1f43f0c5e0b693ea6fddf59ad8b70f37c2027727776109871e240a9893ec387a23cb2d3a7aeaba5369fce9b85ebe284d40326d971afd8d84a9653a9e4bb29376ca703e5aa875d66accd84a8e87814cdffec1d62083d64137f6b2eecd5cb1d6fe6d89ebe0b648aee6fa44696544daadadac9c8d3371860c5c48c61f86a350a4c3bed8595952f7d545f36271ada6b3bbaa116982d0d17243e1833d7e07f2cc818338883108fd3d2c43779ef8cf97486d9b216d24954e686daf975500be1ee1766bfaf60c2a2c1dfce60c8d33a0ab8220ccebf200a78ff338b62e61c47ab592ff80a94e9ff8388d744ca8f7d97ca3378cc377ed930a6098d2f1964ff554a11c2a09fbe93fcbdedfb99ae5dfabef6a93b0b9febd4910efdf4975c4de660eab9fd7a5505a822674b052007f6e86f059bd8148fb6e62f78aab130ec3a6dfad099be40bbf98b0404e21280832326879ba35732622f60ccd1c680963303423ba95344128c16364e3966d94c7ca27e3ba1fe6ea0635a53fa4805b529e904f5b18df0b31cd8f2739647b80e212734a2e6dd1d6445159631250f8d3e5a4bc70d0356ab255f88c0554465a9588124c94a286504a9d1166b64be5e24750a44e13a4eb74f59b6ee07b3932a39691f95b054589b905817dffcf6ed26968d7fcafea053a1c6d0d430320d26d6b876996ab1541166cf8607798e17455e5a10fc1e66d51ddfb95bc04447ce85268c392b1de7ddee70a3d54330dfcc16c18d4c670f6625c100db346e287e11a0912cd77546cbf55a68db077f15dbba4ec4f02610246d0cf17bb4aad92450ea2019e8a6a752cb895f0151894367ba39d37d425c569b0cc95f3635801927a13cbfd73a042794135cf0c71a47c033b389adc549fe4a2ebc4c0779658511dc152efba8f4abecc9b89f7b9c7074871ffecbe545209159b77add86a20755d0ed", 0x1000}], 0x4, &(0x7f00000041c0)=[@cred={{0x1c}}, @cred={{0x1c, 0x1, 0x2, {0x0, 0xffffffffffffffff, 0xee01}}}, @cred={{0x1c, 0x1, 0x2, {r0, 0xee00, 0xee00}}}, @rights={{0x25, 0x1, 0x1, [0xffffffffffffffff, r4, 0xffffffffffffffff, r4, 0xffffffffffffffff, 0xffffffffffffffff]}}], 0x88, 0x24008000}}, {{&(0x7f0000004280)=@file={0x1, './file0\x00'}, 0x6e, &(0x7f0000006440)=[{&(0x7f0000004300)="13417ce325cff484cc859322c8a2d325d2d4149948da1786d55472ab601b08f7ff880bbf294d878b9aae1eeaa444fa20cd6655132dc00068c3c6f80ee28ceb7846bd5086bad923d2130ecac2820cd0a7e7c6f509d12fa3c163e272cee81e8dd942796fac61e190d725ccc4b8758e29462de7f8521ed9f9c715092099d1bf8180a6c18c9fa11d329d97bf895f951ab9e511ec628f1cbb711d79c18b27f0c6b193c46fbce494578ea121219c707d44ce8adcf9f36890fefc12ee62", 0xba}, {&(0x7f00000043c0)="baf960f7f49631a113dbee65f344c7cc68ba27a1f88a299c5ce155caf2cf5212a698cd3502e77f20b0f078463b9d1a43c457660e80ef74aa9cb9d79f9dc968a7faac8c2802f72f260aca06e1c9a2e6acd6b2c8627034d1", 0x57}, {&(0x7f0000004440)="7ef295a2bde361e7378094a8c2dad33a3c4cca44912a36c65857b363c27cf35791e9fd70f6f393d89f2191f02d3bff7907a2426927a7ba1ed03ed82ca17d9c965049613e87f240331640fb3bc0a441ae9cf8eb0ac90ba9cce1a8665a949ff654e14ed3696545d39be1f4119ad305287cf26cf2e587baccfcc38e8cf24485a6e593237d661d35a6618902c2e5062bc37c165415ac00c3e3683340550e154e3c9740cc11c6f5db67cf3ad3d2a722b730df445d1efd09ca2edde90c203ab449e07e7c7e0df11f8ee9264e237e86d7caae01855eceb84a51011bbdfc986cb3d5501dbaa597be70675dcd10296f13fecfa4d3a636792d763403087d3e6973d1fac4a31c977bc9ef14a48902cd45d736bede6ec0d28c1e7d370208822d7c4220b2871dc571225a4c1acbbbaadd2be9fe7a19d36ab1b0ecd8db86ef6d39363597a11be986964924473de1753211bbbb5170722163d6dc840729c66606ea5494849abbc784f16b966be513a1cb69b32584e12782ee8f6cbe0da940f468484a25c79306913fb86401c813a5444381df12ad1ea979f8a1ee40e829064d484ff8cbb635cf85dff8c7e3941f50bcaaacaf0270f6df14bd0d90c93c8304adfd22cc25c6fcb1f8f54e7db7cfc84cae84aa99bfdcd27c7d163c076d873a47ce373b860ea2923bcc7a47eaf6a8110294df2cb97c010a63f23fdb42073cb535e8a9091dd8a3fcccb6c208ec1084312d63ff72d49b15e4d6b20810db429558cecb2afb576e74929f3338b2a1df3124d0cf3d8414fc63d0a3ff64000e3d9d117232ca2acda0949a34f173077b1894d28812187030665ba26b21ca4f382fd11df0aad7a2468db064d2f013f8789a676811fee69a93176e57d5f8144f35fcc1a1ab6bf87fcc75a17839b96bec0062b1a181df15f9387760c70d0d3382228ca8833275821bad819049b4fac25ae07533295d1c8d438bb870f7e36b7ecb0391ee3eeb3265100743a2674ac0629076f50f0f1ee6a20fbc9f2bef78a464e73304729cc5103d109cde4583b70fa093a225a32d9bd1d0fa208c39660f51208ff3eaba8c7935d4353bceca3ea2a3bf50a237e3a38570bb7cb13f90d4db1014e006f6dbb20e16701fad89e4f56252311601fbd17e7e1ceea9812e3823932591076bec3032408eccd5f1c8d1b4ed5da5fbbf7fa4fbde825b3a3ecb70386dda27ec34f24c97da065181e30161204588b94618284375a7f3771c7a7c4b8fd293c2a017f6d26971932b63ddb3caf6759a6936a982178c5d55492469caf0bb4ca36a1cd9d83e3790ef184c2fd0197bb093a47da66aca8af864873ed7fff2026a18d09fdee89ffa8f6307e2d80f532cbf685de9626f7601dfb79b18368c25c9e93950cf4e849f4f04872fec3483333180b75dc9e8fb1817e008911d2349fceffcafb18fd48a4fa97be420c8c6d7c108ebef4ae87388090b4924e28437acc4a9525fb1501adebbe751829388a2783b41cdd15e9298d6bf286192c109df895b6172788e39848936194cb55875b724c174ef0e6c7bfe14fd33c71fba8551f2d234a62d39e803fb35dae3888b7813e2c83cee30e314fdb8237afbda78251cf8e537d24e989489ae811240d2eece8bee0eebc20a466380481aa238ae17405f40846df5da9b7874479389be288017c5fd6425acbfabe6346dabc74aa85f49b28b72859d7be2ddad7788ba35cf07cecb8864c5f37e1048394550b0f875fd9afa47672825d3b792e62310226dd837688ed8045f83552550320025202e19816764954a403fb43a7f55917e4b8d63243f9fb493b0e9bf0a910508b3acc50928ab8136cfa57469ba4d7962c6f53dae34e9c8d9130f69b5f0274629eedacef4915027ce67b4e632b992960a7284399fa35de7250d1370130c315e27b7d2ea1db07901f18ad1c5109e6066b8a177699b55f6531c3075d8667ddb20e69fba4b9f053db8a3b7a44c0311ea0ad96b31906bf925ae01ee478a04659a905b2dff2e2f7c70fdc311a2105412b250b07b5a310584090830f472cb9bd55af81842720c1a62bee23535d200d3ace0d8810586cd9b2a434a13abb80d56c1fb05f0ed30aeadec814a16173658b51f283f0cafc14324d9da4ec43dddc38e0a6014fdb06e77b6fca1337f935002ee71ff287137b5104766b0387e10fbd4e331e0ea1f1c76af15a1fc3f91b6fec8b95ee879a4024310cceb01bbd5628f0ed1531cbdef63a6add9c76a75eda3fd48ba843eabe578f261fee0c6d45bffe76c43fba28eaf22538dcabcc6a7e31409c321a3e1bcadd032b60ae67650c3fa76c010f811e870c4eb9b4b1f8da218c582d489b697badbcef13ddf27a7b5f4e58475ab95aac1c901ccc35175d9af0a6360c0193de924c6747ab586a43494bf3701b07ccf10c64de3427aeb8ad5fbdb659b9f0483d8562df325fb989275a1ab712403e3e8a999fbfb006045c1473c304a7e07a6eb4baa86022d039d7c77705901da419f199f7159afe8705b65391bd33233b75e077ea7a8876e96f8cec29e98a43f10aed4a56cd438825e6f90183caa03ae76b7c1de5873da5146b7e36d85a356aa7dd902982eca54fbb90e67e54822fe8763c5643940ce11d17fe54156427a4c27526e0ab73fd006a70ce265455b1f9c3f9ba6c350330dfbb0b7b20a5b7b3b94fec9cdb3a8e9705a963cdeb668ac20696fe07b5e7173af66029acf35e766b6272f37c5b0fcc1a8b59de5cf2f4f751ca8cbb62e3e2cb4344e3a6b66af5dfebc1ed474cc4a9b11db985f976500a6261f90fd124fdc36c967c54cded0e2def12b503d011de0a3bef6e73fc500d54b19584fbe2714cef283042c8c6c596a70492a78d4836d417ca6d786315c7f0d793b81fb112e5351694fecb4e0edf4646d690f45fdce8cb8ff97ea1a9389f9b7b0f7d46ba413bc8eac27715a061d89b3db2be863110538b3c6cf45a388fe33382e839cdaae5f9c0241a4dd8c981f92e9b6aa8600c1166d267936f03c89887b8674d6d6ca4f15c36d3329768616ef72939ec36c1a7023cd86ad704f84abc559ae4aed323a5db727b62d4cecb36a6328df713d0fb0774133971b61d75513db613aabd50ab36fe9bc035ce23a9b179bc69504aa7504140eb1d0ccdbd787db05282d574113c5e1f617ad0649e10e4f6a7edb50692095500e0a60c4a68d526098fe5d85f6b7ae25c7b8b59b7f8ce7251eeca88a3ffedcc469bcbe8fbc84d0f0dde233197aac8b38eec05665421b523bb801b3a2397383ac8efe6318b7332f2fcb78ca6049cfaae50252650f2c8b10152b1c6f585c68f96e88fc6528a72272ba4cdfd0ef0c76676ab7f1835d4dd273a6257aaaa88785771b4e793b739b53c5fcf484cb0489dcbab71f1decce21be5fd282563d250d7b16dbfee969da0762f9e586808ad048c71a9128e4abdf204aa1ca62a8c634ee43dcb737babfe4f7a1e76c79ca0d28943b97133da56cd7e973a9d5f91db87d25223105def374432ce8e2a7f9010bf02347b49fbbd10204dad7873f8d1083a892d5118fafa9c09776a3784a2e20e68871d39075cb6c7cd4740c8fec30cde5c43b1ee6e6ea77b476443429ccf44e3c1ea7e8ca93f3a8e973c30abf3c578c3f32d59980ff05385b6741db7ae9a1b8a7d9c2ca7195fb6a342d7f7c800dffae56bb8c9a0dac02e2f6230514cad516006788b0ab26208357eee82cd3afdf14b64f1919844bead8f96d2935d304d02633f4e62a8397a56e9fe38b604f33b3f159f23514cfd98944d81d83b83c51e8cc390735fa782029978d96904b6168176e395cb6b8acd820c9dbab7a25c4d39ffd9ad64ad0c8f23c5439fb64c2833a06fe6281b8af94fdae81631fa3c825fd315080918f53f07247c84b279dbab3fed11a8d9fcf5c3eb7d86c427f73545e824c983c5b70dbcd33c9b665d60c832a0edb720d912398224bd1a96388deacca206b4e6b78bbcfee8ecfa3eed396b0df4cc5928952e793abfcd844c375c44a4be5c56484e480459b7a7617b23fa4494f2be4687d0911fa571a7f9f5c2fdabbd2dd180b5d334d733ac0d464b77e75b0ec3ae8c2be8ba6878d7090dd41e7aa6dfdc48cc147d0cac6a4bc39aa2e5eb044870fbcd1d9d62e59ad2f25a4d2b89abf8f7fff2bbbb93c04beb4dcdba9e84a0ec8527d043b91639df3e6a926fcb53db3be1cb4f63e28682d1f1790114d39f84c986bf91aa8435ecf48e340b58fad96b887802e8bca660b94694b1ccc6d31406127f87f878ea59f0a69cb703032252effb3988451a45de89677d0e0bc1821a0bdf529e4f55e7049b4b7846a837649ceae6a9687a68036255f2f368877163b7151559f198807e89dde00f46cc31731007e938745c69e79752e484ab7aa47c84f9cd28a73d6e82d7756562b2a1fd74ab648c29959044e067be48bcde6ec1c30a3e74abf0de5f1216e6b5921aa4c182dc2aadab92e36ffdc328e51206338c6b5abb52d391b190179a66346a4c27206969f8bbf71b17579b398f8cb422a90d8ff37173f9d7fae817746d6116bb6bfd2cded5fd89e687e6bc3420ec414690014e5e211629d306b465842ec7809ef897e776fcc5068912d0f8f6ee167ed52e0981b0de6ec3b71887eff7ada6ef290f5e9f1ea7db310c4b88fc49f172b9362fdc6c2719067ca06bdad5b15946f9799bb679246649195277fcca84111a6f3d8a37eda0b52e87195e92838e5b95cddb7ec96b903974f86f0991a973c8d5048bdb7eab4ebb37d64a1d3656ed6b4e620b7f929ba1cad1e1f22b031590944891fe18ff6e4cde0569d0c6796729e9d305d774a74fbdd6e08b50e795dadf05df929c4991fafdea1f69f4cb789e670de8b296427ad8b00f69af39da0fd82bf42debcbb74b1aae0efb6a3da2f7f8aaef0134be286c0b3bb0af457a9dce1ceea8196e6cf6d3d477eda99c161270a124bcf7f55f1abe7bf53dfd5ef5e783c101ee6a9b1b31ee82ebcf6dc0d3a6b033de91b108d91249833da9d65eb662c42ba04398f4bce39dd34ffb3cf3014004af26193fed4b95fb2047530ac1cc045e6158835abffa8e7f55fdfdfcf8bafd0c22a7889f4e7a96850149393d317fc605033cd4f0579a9251ed71b2b90ce0e7f3fb9a1a559c078efdc19b39f4c01b646304d044d84c6dccf1bc97811d7021481207a0dc0c9f4a258d9c5923777dd448c9dbcd2ced3b8d48d86e64d320d213e1661fb8bf15265eddbcb202e71283c65ea31ff15b82943d4aceffd27d2810eca85ce74d8166d08dc93be67f2a28810a82935fb6f39befa37ffb7639a05ca023d9afd503a44a24132e89bfff25994c7f860033ca19cefe38eb86092748119f00860f2e374648a6b24b9b588ba7b688d83b31f9b35b45e3b1d6a24d04b193be49ae8a4889016a4450aa107cb93d85238af80c48d0126a768d5ce459415d8cddd87079d2802003e9a88265e642c304861b8be5f310bdf7746c742835efa7fcf44a07b60cb0e3c42956f93170854cf3b55879d43dfd0cd39bbbd3fb24ea91b6953bf64a146e173e41e824362612d0aa6fe82e029628cb3b4a2982133e5177ba80dc66cc583762fac8ba56b468a7d9cb9fdbb58ad9d89db39101cd790b7d4abd6ca0fcb5808b3fbd8e03dfd660bab46f1a4befbdfd7b962354f98d3778c48484094773e9bd3989f963544abfa94d1a2bbd97b9a48eeae336e66db529779a0e8f8e07f8147731b2cc6540a3c4361890f75b79006e2b226522146e0d5649577711e42bd033dcd8b48ff41c1dd1ddfdb3f71e4c17bb78e0927fc74b347e885a52c9ab35fb9930f5c807b9814bc8e", 0x1000}, {&(0x7f0000005440)="c72c56c417bc0fabb2f2b971541a5b083e82ccbbfb484c1c6d096b60765efc606b3571e23564059d8710cf4cc717bc23005055d290a572cea1f21b7044287e56372a98a67a2a7b8d738c0577a34241fd9556ce450ba2eb819a5d0ae936c679ea93a56d179f92d27ca956b1c34362b50d6bc87cfb114f43e29cb2fff9f1435620ad8c1040185d5538c2b5b058c7de1d82480625de76ec978257d8a772980ac3c026842114fb6ea26c586bc2ca9147c6dfc4f9efdd95d3df00995b42a672c6ebc9255ecbb1815c2b44709a00fa396b330a1d3f3d5e7bbac8935bfed99f3d57380081c76bf2feac06494236407841b8e5a542ae7fbfccf1d2ab682f5c4e46dbde39f4921462f634ab4b640951744f021b8edccf8c49a78b219a16d6ac6ef90f95c396c136eb5731fcab578a748f30c1783745051e156ac57ba9e391b1d6175aef0e5cafd1195f91cb1a3776c160055a004c34bf3136ce7c2bba28fcb364dcd073895e4d142d76178263c8629f8e473145482f3320cde2aecf141118e9c8cc9731f163f266bfdae11c7c9e59f2b1489a5fc0736cf1b287f9d13a5645f913baf5e8c380cbe74f41029f4b24effada58b0866ccdecf1e697719e4ef7fdd709540fe480dc80519d7b1eaf1910b633d25d4772c193352923b934580425ad986606e4b125afdc3b1c36341dfde3f4d2512b86a07895f80607c6964c9d7f87e23b0d135ba17fbe49c7ad7a2541124381f4c8e7c3d71a74145bd6116172a06f4594d6d81290466dd66efbcdde43e1f6ac11047080b40653c473b8e279fcec1968926f0c00e91c0680d5a474ec781d96d89a5bbd878ac2bb686429bb1247b24b334ffa7a45c7788a8349f2de28deade16d087f37d8b10c2b081076c233ef6d33c215ed4491b07ea1155532e74b5725e164b1df89bb3141b8c5f6654db0be6fb9ca36dac6f196ea0c136bdc038644c75cbd9c55fbf27e194e10f2f22c843aa82fd830a1d19b19123a0490796aed47a4a9c11a6c0a1d4f48597b63ecbf014bcc10af2416b4681f4ea47642810e6d1bb9d5055f452366fa2bd5bbb208cdb674d68b666b5cee46c6fdb60d01766803a40841517483d4f2209b6f9bdf9b8d7bbe9c54eaf4bab4b1e936e52596b70155d10ca0697f000ae330d083cc5129c3613a41ba95e9693c71017c7146c220bf2cbc332c91a94a54b243989bc54dc6771f55a77ae51f753af77c1dd61d5f99d507765103c082521508219705d42bd413783eb45a4f661715fa6f7342165f41726d8b79e1c3f3d6657bd6b59cb7801bad912ee8d7b77c0cce9717e112d224883167e735301acf90da1225561c42e1e807beaf407ac0996cc88551cb2e7c860a74904c9d48bd2061e61aca4c3208e63f487eff5f8e718eb19dfb8041af195544093c9fa5bec2f8bf7574dc8c3f56fd3b5249c360b2e9c0542ee7e6c51324fcb4a819db64d065be1be25b13b3ee9ca47314b7fba2df4ba6846754cea0ed0c17fe4aa78b74d027483c2d75441e6009decb0f067a7fa4077063b12f930c0ba0028547c1452e140cc16f09b506fa82790c596d5dab4315679ebca6f53101e16373c7ecb83299296eae06391111f03131f370fa47a7e69798965b64a54e8e6e74cff9b3565935616b53d798c900c337b6cf42bb6e5aa4e27332ffd74f98dd36715bf40826afc5c172133a94585ad24977fbe09b781a3368801449d5a28bb0da6535c010e56b90ad823fd0457a917cd43ff2493d63fd7f5f5eab64f296986c62883ace8a9fa4e0c43f50186dcf3d3907a67ea3f5c7ab596ff49cbfb00c5fe89fab3301c297101f1d4f3ebb47ad0135d605162938e3c20a3c010690b7fc6d4eb77f160f615b5ba464fab7b1a1b69d281c50f9d6ff95739c24f43dfca44dc4e994a28aed382ac05084044d93c9ac5b68c8bda9cf3cbc97d0957f68afb5d0b3bc0783ef755d1165ed958aeb72afc791a09dc1fe0042aa5487831d2962b72348f716c8e8f5c5cc53484f1699a03f9575d25abf9e925aed9814cb4ad490489945720afad68f6f77a186368bbe87b11be733a38338d2145dce29aae0e84e31107630f0a910d0e812c91ef3ebd22952f73a9184053a48394f9ac5e0149a54cbb5edd393348165b7c9dddf42533510e0c94c3523e2a4e85fb9887b98404b1fb085b0500c2b2eaf0addfddc733f8576d1d6627c2b81933abf71d78ae0b7bc0740987830b25c108bb984800ac85c62edaa8248a0569ebe5e8d60baea15f2ab54ad22f84c41729502129f3a315e1cb4b37180d9043f91dedd36fb8b723945587c7ab0726e8cc47252e817206836549b4b0bc984a259acf7032c58b345383c0e52c77d687eadb5bf48a7ce1f24aecb5956d8fc41a800f493f8fc404bf84fbf794bcfd2a281725c44e553a01bad218cbade454f93c8eb165443ec1abab7eed548657de21dc997164a258a46f6f79858e7225f4301a861e4190b1890f861b7894736cfa086a80553ffed9f9384fb3133ec321ecc79258963773cd4116dbf5275520d5f78a782a77ed6ad0f0f7e49eeac7adf780a57fac8080cca282410665d87895b195d863de26042a4202b02850d20880281d1154d6fa5a64deeb704e06973c0558443eeaa29916c49fe32417e29650b1924eb5cfff2bf158acabef8aa26fadb64bfd16979af7293a074461ba9c278009f297be64874a3edab35aa225d693de4534779173b216fbb585e88fd183fefedb00865a584cea68bbedd1b6a4319ecc8fea39ce6d54a8ae2cb23bc90d0fd9d5343f72b3a6a3e1c2c81a2eb70b02d8a3c70aef80b9b4bda8cb25552084f42d948f72c0e83ba8a95178dcfdfcd7a15c1bb9f45a83b17704adadfd76bd84877502a87cc4473e067a3e65adb38a74f4605c434cc643e831f60f3e6b47698a44b11fc042847ac4a06e050eb0add38282ad6faacf0ee3a48a3d8d9f4dcf24204522fb1db5353ee0a421da97bf3bbf0e299a77553b76ea5a982f10a5d17cc9647339e84a01fd078118dce79cc0286aedabf7584bb9ed53b682b216e1f68c79b6be9ac71ad3b224e94fb43ad52124bd1fc607e7f4138a2ab98a5842ea730b6b5ebb9cc2a8fd5901a6ed9e0ce49b81972130beb449bd200b2e7f663a99e5d184cc960cda0397f7da02567286719c7ae2fca155519cef3699ac72eb06e1599c254a604c9d5473a329b654742ddb90b0998408b502c0f75948c307049ddbe5cef047c456f18939c86503b0c0342d61f23642808f09bfa596ec5e63dac893afaf6e5c9dc01e40984602c2a9a74a3df016e2e8779937679e6451043605105db3101d4d08112f85af0f1969b2cbde4f185d453f98e9966807cd9fcf45e420a480e77b7221685da932031932e0df92edf6f858ce9bc86abe319c6521f8f647b89db80d09c863a55fcc5f5cf047137eb9644792ef8f372078b0bc15f30f53de7ce7d15d0de1ce88001134eef1b3e4bd21d5e34971f5e7a21aed2c33b43ff462acc7bfa979c78160468862f00a4a60bee745d56c273c43c325f0be8f75098fac9db60e357f14216f54249d9b20e6b1c5ca4bfbb20bee3e91c1dc1516ebdd5029b3c410821d72f790134741b185ad7fb08bbd9c6331e690d6dbb2f825c9ac6efce6692b0f361c55b33932594d80402692d2b266aa712531872920290fb78042627f93109be7061c18aa2876a009bd977ded5bbff7ce9923cb13d022b0806e5069cbb5d5d1dca4ab82032c4efb96398449ce680b6c7fd28dabaa6f85fb4b38e00dfe2550829d7fbb98ad42bc5115900e04f866613a9fb7380e645ebff3e73dc4a2cc888877d8028a44d5adffacca24d9eb9da896ef76a86913c3870b8f8710c48a9e9eaf57ccabde21b407e4bd4c81179122c532ad45711fdd1a33ec2972bc6152b563cf8c1ab1f36ea6e82597df393464ddc2731dfb86fc2582ee5f57257939ac38c5a75a7d98a0e78f1addbc0489da34c5455b31b2cc37414d43526020fbe809a66d3269093ec0947ec39d0a8c4c32e089614c17a09b7df2927fdbf5c06b5707ec7ee7a10acdc2960acc59df542bbe2e03202c9494ac18dd10037149a70e5b7363ac4c07cc158aacf4dc45266150928ddbcdfc28625bbe5b27aa08ad6f710217e96dc667fa3ff0ce43e0624894e2832dfe151838fa26b7132711a3c0971aa05bc81883ae42b0d6bdbd736819b6a30c03bb19cdb800b198e24ca33dbee2ae458e6c75240900ef060255d6904e6056b3a27196e76df385169c63407d16b632c8d02edad23c65b9166fa96980dc60863b2ac6fcf6af1b41d27c1f52fe18a72307a14caf1f810fca0efc36b7cd411b0a365b822c1f1940554acbc4bb4e81ebf8ec870c74eed509442c8dd9a0336cba81bacf4f7bc959954d01e6853d4312040bf8c0a68796cb2bc1fad227301afcec82311143e830e39f495f84621fe345aca45561f213b24a179c3c2c2461b506e716ced721001f7dee5cfc666ffcf20ed2d04d88e6f6cd2244b81ef78d80f788ed8603e4ca5018479d3bc719fe6ce029c8e754f2b11ea0ff4f064f614badb1ad7e2e988da778104247668bea9dd023f878171cd7c980fbaa6cbc43ac0e9baed3e866f803e677e193eb9e8aa061dbc1db875054a1d7d21984edbf1db3ef1fa182a6b437c136801571f39dc77abe596d781a3538f7a34f64dea19596b81a0f0fc83d810e9559e39e862968edd27342475461ef94d4fa2183dbc52e86fed3b9688b13039a0f5c3f123446192146b1b5c9b6192bd460231f07e41b98aba8cebad5224b3870c6831995924227f77db076974076162e69e6fb42ae8c3020ee9f4fcbe7cf86e91aa75d5565065eed897f76d1d5f2cf206544637928bcaef17b29fcf78e5b15b0c6ea331e7dbdb2aab1675986c7f4349df053a1f123155fd1c1e6484c444577155812edb345ab57e35f64cce768bbc9920c39e38fdc67d21380c6d30695491a94e895b5a95e061b076b5617390e44fa8ee171bcefebd3ec5cce90d42466ce1a7e52c6e01b13aba4c244c582e038ad47000fd9ba3e5832ca5b74fe2673141b2648e411710775804a77d36b57bde266831f6b1a7dfcaf753f6b43a90390b7ab1592166be19f7750dbcafa4f40d02ecdebe3b8ea3e7b87fd5c78daa042923a4c54469b6d29be2335fe04cb0bccc38c4542e9cd75a29a956c51142e358dc7a25abc71a085f61482f3c70bf599edd1b7d0bc0df59f96225eb932dcb729a2e39c67ad9e7fe10dcd1e65be9586a87d0f0b8a43d6575e80fe4a3fb884c1f17256634a2555e1d88495906c64e433d1c98de8f8aae9177bd527dae1d78407c129c3de8f7aa0c30c59616e395438737dc8e1e96596938bef52e7ee16150294fc4da0268458df49318a047d179af64b3b80fded4e230d3f7177ef5a19eb161de287305e5735d4a787ea0c85cebeb4f955121eeb3b27fe02750d1b7421c3f6867f0a2ba6596e9705e2fc11e83dffdfdd2f6aef18080fc769f885668d267e9faa09e0c386d305ad1a48ffb06f25b4d737241dbabc6f754be9ead1f85fb8ccb62eda0b85010d43e843a11438c40e5a2397708cd22981ef817bd209d1d9b18ac5dfbf0278e4cb7abb6a34b1da7867da799e7cf3690cb83c1db18ef8f1d8a7116764318d9f4a340b1a6960f41340622736454888c2dc89689f3cdd2b2311d09d537383ada15d7fe1c59064c13a3e29cf50f38e92ffb6adbfefe52675721e1d2adf627075473cff266d8dcefdc0a5a0c0d679fe7305a46b224922fb22ad19dce95cdc9377c54364637b201d24bd8aa20d4a7adad9ffec2", 0x1000}], 0x4, &(0x7f0000006480)=[@cred={{0x1c}}, @rights={{0x14, 0x1, 0x1, [0xffffffffffffffff]}}, @cred={{0x1c, 0x1, 0x2, {r0, 0xee01, 0xee00}}}], 0x58, 0x800}}, {{&(0x7f0000006500)=@abs={0x0, 0x0, 0x4e22}, 0x6e, &(0x7f0000006940)=[{&(0x7f0000006580)="da7c469b554bd7fed9", 0x9}, {&(0x7f00000065c0)="2163872b26e525482e710715a42f8d4cc3ebed1e6201ba009c73601dac57528d809c71efe0cfddfb486c6683c5e0ed9a61552caac0ee9b7dd249b06ad115038f37e1fbeaf387342e22dc4e6c13adeb337b62d5816401906b9a2a0dc436677d4630cc4749b8191b14f7042331e82243efb6c282e5ef56cf5671586097232c5862cf1aad198212057edb34c429f6d223a51c8a8e24ebd0f4b20a430be39c8fb02b429d3efefb2d3b3080833dcb9e4c9ab35c6ef5f94f87ed210d0704b594c15e6c1a8f89a1fe07d7374cc4e5488dc473e7e4435f", 0xd3}, {&(0x7f00000066c0)="b306b6cbc5baa81354ef9dc9b38d74915faf335383b4f52f5c727337f1646c9af8a33772a5b49bb9e0ffcef026b7b58379bf48ac9509a9952974564bf88662c79eda5c0486abea1e206b8fa04af28bbfa64fc478550bc194d5e12b73c1b7", 0x5e}, {&(0x7f0000006740)="019c8c97c124c620fd59d4443abfb78489eacfee2598378365daae725583a3295ed665df67c31727885bf4353a6ff1ff71eed65478673e7b23e5ddc15d12b21cbcbe934956597059485343d07f446eb58812a68f3d25abd44c68ae78ad1209f6d0852a984eb42f762f1a815148aab52320cecdda6869a1a6ead045645559", 0x7e}, {&(0x7f00000067c0)="fc3e2c0fcc0f8adc9d1e25c9bcc9ad28052a352c0ae912f1a85fbbf2d0fe1c35dcc95e4f3289bdfe445562e8e3bb57ffcaabef7e407c9c1462f808e5f14e28dc5c10fca77752d004f4d3346c7d99e0f71821f1bf1b399ed930d3b57e83a995e0391cf371a5e2aec45d3c41aae348ce5915d3bde63bdfa56b576ab91cae22fee435ab39fc78af81bea33435b1bd8e3ab2297ceadd671cf91d1112de1eb70552dad4c1cec78d", 0xa5}, {&(0x7f0000006880)="c962d9983ba9eb57d0dd7a83975163ea744912983c2af19ce54ef300cfb9cbfbc057cda12defad652924170e37470aba9e80ed916ee0eb88d1c2106052293b0b2d63986b34463819add397acfc9f63f192f002b54a3a21be4bdb9111d0e7e8d6b6178e1d6e751179a92070153110fe419e200415208c1f1f8166c25858624be20b55783e05d57cf76aa1f35421562eda89d37a4eb8d86d6243d68f8b0ef0a7dfb2a1f603", 0xa4}], 0x6, &(0x7f0000006a80)=[@rights={{0x28, 0x1, 0x1, [r1, r4, r4, r2, r2, 0xffffffffffffffff]}}, @rights={{0x18, 0x1, 0x1, [r2, 0xffffffffffffffff]}}, @rights={{0x18, 0x1, 0x1, [r4, 0xffffffffffffffff]}}, @rights={{0x24, 0x1, 0x1, [r5, r5, 0xffffffffffffffff, 0xffffffffffffffff, 0xffffffffffffffff]}}, @cred={{0x1c, 0x1, 0x2, {0x0, 0xee00, 0xee00}}}, @cred={{0x1c, 0x1, 0x2, {r0, 0xee01}}}, @rights={{0x20, 0x1, 0x1, [r2, r2, 0xffffffffffffffff, r1]}}, @rights={{0x18, 0x1, 0x1, [r5, 0xffffffffffffffff]}}, @rights={{0x20, 0x1, 0x1, [0xffffffffffffffff, 0xffffffffffffffff, r2, 0xffffffffffffffff]}}], 0x118}}, {{&(0x7f0000006bc0)=@abs={0x1, 0x0, 0x4e20}, 0x6e, &(0x7f0000006cc0)=[{&(0x7f0000006c40)="51bbdbec151d36a963cf19bf652664be347a6aef9b5db9ca93b59b84315d3b5750c1c66c912012b609c033bcc39aa3008359270adb431f00b87933c54a3d246f10275102cd96cee8f679", 0x4a}], 0x1, 0x0, 0x0, 0x84}}, {{&(0x7f0000006d00)=@abs={0x1, 0x0, 0x4e24}, 0x6e, &(0x7f0000008340)=[{&(0x7f0000006d80)="fb11ba91be236856489fa00dd8a127ab88f4afd12043e12ed8a465b3845414c79d01d16dff31463f285ced0946437029e903cb90c05f30daca11c084d9b7299fa003f0329de8d778d0bceaa0b3122299876c59", 0x53}, {&(0x7f0000006e00)="b2476f91e9f94d09a95df2c3c393682531905c6fe773234eac3d1dfc1bbe7b7fb3aa700c9a2c99b58701ca7747cc28b109cbf1aae33ad080f16663919e2662ef8865be4f9a9f53a58631bc0c3e490175bae88bfa828fca441fedb51345dc978f26a91c3efc86c8afe7c4efa2200ab764c258d9937e36239b7b6e814b967790d2e5fec18ed709cd9454d997a71a6c5afbcbfa51fed8141f5f520ce0302bb8e21c5a793602ef3f235a", 0xa8}, {&(0x7f0000006ec0)="03520383e565261b35d3c173b7ddeeea298b6f5e3bf2385b1ec6195418754374dc1a9e14fac670f3c757d19c1eac6b41486a3ac7e1ece630d4f479b590a9a37ca1084b35710176456c88c32cd585fbf4090444ecceafad4f652421e7218680de2a82bd0572bdf331d0532ce37235f5ea6bfb00c23897a0d37e68dc337f39b4edfbd3974f17512f7eb7fdb9e5c0d3dc656a4fef55aeb1c9940c6fe157cb47d0d0618df02398fbd47139c45288949ec4d6a3a7b2071c5ca6f9f91ffb948667bfb1dd7933879dcef55bc6f019fe9fd1fc9d7dd5b4dafb6c83e3da48ccdf1ebe1855243c3c99007e9c7442e288b022849056", 0xf0}, {&(0x7f0000006fc0)="3bbce33845a3bab401347c89b5440045774743bf376b7d5a2ebeb7da0484b9ed88b442a07d6bf69a2e04d7efa4f3e9bf2c22d59639df77ee242f5c94432d564d645e38ebdf03eea8d36ab47b5438c1005568cb61b8600aef2bb5edff6dbd9a31289ecffd1a38727550ea29800dae9ac3685424f84cef73fcc20ecd0e748dfba200e7a095979683d880f739d2f7bcd9fa310878bffcc087ae1fa3a923b8b98b94f77ff21b413f3cd6700e6073e0559dedd82d2782867eac22f47a65cf3d2adf6a98d6df6b655a33125b32f19188993610d738adb916e16c424a41c484bccc9bf5b33a473e02f6f38ace86a09c74e4", 0xee}, {&(0x7f00000070c0)="e4c65d2dc615184cd08421aaf44a9e2b22663ceb0fe1352e3753419d9477b963f5a46e32c73384f92022329dfb2198d49ef060fe34f145091583a67d258e70524b0d1c33fba21a35a973583b3b6b7a911120972510e844827908f33c5e99b04930598ae9b817", 0x66}, {&(0x7f0000007140)="7695ac7ff1a31db0e20264a8a02e494cefdd03bfc11d168dc4ea32eef9e62c2dd813aa991ef8fe5a8d80161309c715385242eb8f2c0f9dc657945cee6720f62c637a1a61f6a0dc1eeea994f13a3d3fc94726c5c004c106f8f63788c90268acf509547de49a89bb87da76e8aaa094447afb43f9bfe7e4dd56c9103bb98616849128dbfd8499f8486fd980387ebda0c183f5b1808f63ea0d046ac6f6ffafd84ba2630607c3d49fad18ad5b6a9da86ce394a0558337e46e3627f6d776b0616ac9cdfc29e444477ed6c09b9e6852c3c70b60e0d30f172ea836a3934c26ee4ef0e5db12202352da696bbecef0f67bc88138f4c2c87d7777057a0fad94d907999967070a5f20f44cd56c2d689e2da46c194284b02cdaacc569eb616f196ee102cfed0026f461bcad49d2592e4256288928eb031d7c0793584a1bd4f1c75f8e012df671cd966f42dc906ed5b136974b973b8aaba8b7b3db624c09a780a7099fe066f22cc8b5e35ff22d5fd5f5106ffb3e5352d576170317a802dedf7f27665ba763a312896fd0f561e8cb7deb61a7bf91070dbd631f97d67ecb01c12fd641bf2ddd446ba7ae6b0c245a6aff20ab0532d61fe6ac16435ca4b0acccd49a34da17c09ce74964dd7f62a27d4416935c31a9c2bd9dbb5e84c31b541eb7847ab180d5940d09cfe59c9faa0de2e37ee195421a791d77867786056d51404d321cfcb70c941552bd166cbdc716a327e04c99a3bb3cc8d0bb49a7f498aeb0ca119b9b666128653964b64e28fb459a08dcc16d4d60270ce570a7a319f02d0094e075623ef943bfd15e5b58b7720ee95c3b6b16d747d384a7ff6509f509f226c0c7609beeaf599f6201415437a57f7ffcebaae450aacd2ab2e209cb74a47d09bb24c027ff69e16b812be920b02110a65d6b5f963b6f22bd9bf65475fffd05ffae2312484f0edf883470377d808e765ae9f06ac3c77cfc6ca68b926c6f6fcd2a536037a875089a8215f0009328f62d6c34a74b82df7aab0417e28c5e9d67467fd40e27cf15b8c0464ec5965b095c149d8e9004b22f3d755691fe81652c03951ae74d44d795f1f2c4bfdb8c7e4ad90cfe58fb8d86995f7878aaf31299a4a2364dcb1eb7c34905260695cde52dec3b16857166b004ed292933c51938c56657a47b3d9c28e85c9c510ce8f890caf6f35999be62d06cde067b7bb39327d8d02f7888f90ad0441d71e13a8bb15e86fe41de5f5329668e3f5bc89c23122e1b01fc0e6ae16b0418c6527abb2ad8d66b8822ee5062e96616508891cd6e9ea8f1b4086c2b7a4e32bf243d9d182e698dc4b7db8d73d56059a994e74a6a34dc28eb59e2da800269987462a8e2ef986f4075cc619c2cff4871a6a3b45ced588b0704aad0f90b4bb4cfb1dd87dd4f17a0525d53ff4f12fdbf6fce8ea7bfce03b2e52e318827155fbd6646715d1bb9c138adec71505dff1907f94a0a6c11d870d51fe923fb86d8d3f22f679d59fc60c10ed092fb46207a645f7ae96d0bc3c4c1f352a849415acd09eb1730d982363203abb5d770733988f91e316a03d5b9c892607f96384734a6cbda5f8878721ccd39c900e4a0e7d39f6846a374005a39b2f5d459531eacf2a871efc5ccef68c10101d961561746961646a3d85279ed5f5f2bd17cf05bb5228230d84ba5109447622bcaf75f64c2f2c967e6640a07f7c24518937282cdaa014e3b35fc4858ee86ac6b75315f90d962d66bad4ee81f2fd295d1a23ab51a496a5751c0707010851fdd1841acb826ba775677ab4a0a21004479456c16515a59fefe350f08bedd6e30f43e3b3065bda8e31105c9802ec36ec9c24554a51c5c3f7ab16050af6f53a5ef26c8716948df5067ba7f1e750fe2495e13424e6c6ef942c6f4888b2e90a12d521289584f5b045ddfe85e0e9d476e4ed8c8318410e2db058d20d63ef6c75cf59978a41fdfc96f45468ca15961f8e7f1ebc6c04b62a587d7359fbe2009ed792661ce7fdb02458e3531640f21f3b2f6189c871b399fc7adbbc2d3b26e8c34eecafa4758bc9c73e3b54ee1e5014529ab8b0ffaf653a3c88fdc4aecd3372b817be8324df6771a71c4ab095577a1c33ca4218baabe9990325b9e43444270c6143a99ebfd6da80dc3d7099acd41b8d7c1f8a1528d7cc03360c192e6f2a4aa6b6f48bf1973e3d230cd2de8cdd35f8fb99da627d864d066268a489828e57a9d3ee2d7a55e623185ca717ef86b7af9d1f75323b09248b2d0751319d95cb36e4fd05396c09875b494abc06d4955c3b4f75abd3861fb55c46f8781e32c723ea5c5540fa489089a00de7182323904a628cf8901346dce0a4ec30802c5f51d197fd1c1fe52e451acd591de5eeca75299fe390977f83deb23c2d1834c87e8033b4f2752cc342d4a9f32d1110f3ae644bcf2e4d98f09a8938da7d752d5ba185c1abb4489be9cc75848c4f73844af637cb33276ac2bdcb59a282250ca381db7547a443d6eb2a465228c8420efa779f1b58ae71ac23f0299f917cfea986978fa8bcba68c5de75540047e5874209723b45b4dd808b572670a0431075655fd782e3608085bd8118b2dd343d902c6b763ab6e9493c8865d12aa3a2f046c3be5bbe950bd3a6a4107d8428eab895e889cce902fd35fb959f153da39dee1cae505196b478ad3bcb6372b68563a91f4d4442ac63d780726f3177e6e4c4deea6fbcdc1adea65f6d73edda62393977bb70be8522db09d38f4e0a348b1f894fa41ffd8a0b29cda242dc9aba54a4f747b112c88a966d16149ed6ec01b0df57b2442b3ec15c7071afbe9ac3584a32037ad86a1c21a01a4fe731c3d71b0878e1994279cbf1be4023ad33c6326523d8419032595586d4f1b639c37ef65cb40ec3ec624e79c633cc568f9734fb10afce151d36c5d7c1fc6db71ccecb60972653bfbd1fb3cb0736ea02f85038a315a9958fba821c719a98183aeaacc977c3317d792dd6a342156a7efb0045addc0f6fda7a8d8122f12ee56b79175112c3aa82bcf0a6cbdbf4a2fb583d37eca28a2b16d4d1db1129812eee73fa61a8c5a5d5f03cc26a1b87e1ddc52acb8164508cabddcd07dd2b81879c62d27e336ee2b628d396b4667f1cb24c1aee11fec08487664e127ac28a6026c21f57650d27fea010ca1a013e3039310b51ca477269efc134a23a7f65a95c4e6251a6e2fea85ebe0a352ae6ffbb58866b8381b23cf341b9056023463aa738589676d7d0173dcb45c633d6046eb87711c41708a6a8aee04249215e01e0fd7332183a8f9b74dd30259599d898828264218947be197b656ab53d0cbaefff30a3feb13ef21d3a6312f67e6f5c17a4b7259e4d0fdfcc8eb197e3be156a35bb2cc11ae130b32d6cbc69adf5aef147793707ca70d79215d1ed2f8817bada9287e8d54e2fe8b025bdc333d8fadb59e5473060f104124ef4801f29ee58a3346a629676fe1c94be63f819ca31b74f80cd4e90d9dd46216ea624e78f503a41be5f5a4f08e9ab5f18241d846fa9c519dbf09770dac1cd86880490d89b7156a62dc3108b847bdd6f295ac9d1ab67a829670969c556286930f7f65072962910437e92927079edb9469d65318b0d863414e962fa5aa4b263c0348a22e3d8759a7b2b2dc5818101b8313d2d457f9af1f3287910461c2c348e98ac2f4a1f90987fd7ad5360fc9e95c19387a54b4f4c85bdb5fe4422790c95bd0162af4100a5782a46a0fc5a0e0cbc734eb6199ffdb7e497ccd94697f9a6975ebd8742b4a1b78a4dc3b40e8e4f0ec9b6ee9ebee4ad5db6be7b6a97b23bb3dc7509eba885f6764972905b047753a1fb892c5d29914996ed1fd62c523105d89c589b9fceb995e5d99181ca1e4e719208b2a19a85f747ab39e2e742651b2633abd4f38c5010c01e9ac099eba711b0f209a03170f9bd567e7161837897de986d6241082ababf2a5e473565213434fb4ce29b3bbf3b553328bf0cb6f7d511bf32b608a7688c35c60273c4569fbbed5a7176c1cb2531b22183f94fa48c696dfeb28c537288af873540df942d97deb9926a8e96257baac798cdaacd9abead0ec9730a294355c4a89cf841e5e0fc28eb6ac1931c84e179dd1c466bac005b1fa4d11fd0d38bf56eb880300105f5ceca340b3bced1de490c1fe4c74d24266c4690f260981174f80a144f528ac3695b69c8563a751b7727260ba8fce4a8deb80fcbacf1ef0b68f8dbeb292d55027a0bd78f0220c9cd1bb90c8b1343eb8892d94345463c12e054b77c6326dfc2e4cd89ca5df074639485294a13449909661a8f22e772b1f61bef35f118e734d71495fddb2e55968a070f7c22c4895c0596c6227fd50ed88313f9d1d412d48352f0cb1652241a98de1510db7610a57fc78da057272cc81c4efd59dfb60a5d92ea9f7d679ce4f27a9feb8ccd4271229ce8f90b3701a41fcac3cf8e1bcc1d5dc1edee4c3d511d78b72c50b6b8874fa6233c66cf43f683901d3553411f145da581e0e6d72e10a135d2c81200a93ade537233298f0614e6604fca578e0d831bb08d3714c179cd332f98222b991a434950c51040c1ad8dd2c4fbe7767e166826a111173b59cb020dd859653db17288c9931dc511ebb0a3d125a98f77445e6dae32ad81af4ca16782541fe3017f03ac29b0ed8e3e4f553bf601cce97d802dbf30998e1ba9c12ef686897e3b226918d74aafd444ad30f83ee106f1ef2596ce25c8ba62fd9750d460e167178b34ae7fd91bce0e764a4330318867c67dd19160ec362f304051695768d81ec1bc707e538d0c78cef47e181546355264bb9816478c7cdf79d25e2a4f6bfcf0f255ff7eb9710f361cdea4e6114f00403ebfc3b932ee5d5219e792f67b3140f506eef07882c135e1aed18563409c1f63b2364a9aa030701f331650c16dcfa740fed5ffd328c52be95b5ad1c36e8896b639b175716db2d041a2baf14cfa98e89458086c67f7f3746d1ccd2786797fe32db93ce123103b09099413cae0b5f4bf1ce47b6db0507e52758fc1a80b833269e2ec2168097927eb7c4ba0e799a91d922076d86094a639583d7e36ea51c0fa93786879a41b44f40067f4d6bea918774111d0befadea359490ca5eb90709419b71d79f7effc2ae2ffeb80e333c40d8e21fccb5af30adb8420df38a66ae09c3eeb8a14edaba67f6c64414fe39a6bf343abcbec7bcb04491c15d8e50098809a147ac584065fd142dc5582990d99bb483569a92e43c0af2f5383dd199797ea2da7f96d43f448c03e9d2ec8cc3e4efd00259e89f3adc317ed21630d083c1187c301df7204ce641b9f3622fdc739970f148c014dd28a682e08bd68f38e197a35337e28f5c9bb598b7c55a9065e03a455a71aa5c5f5cb3d8a6dfe9e8b3ccd92c0f59c64fee74bf96b437c2eefbc948321d8c661f21517ba824cc278b09c8c6295177bd28e17fd5676fcccea7954b990a563dec2fceda62b16941e971e3d16c27f5cf9acea915803594c418be69e452831d8266dc7007b76f39844a3dd79cf328900039feee638eb20ba1c1dbeead26789d712b859c53756c47dba1c3885ed2482aad45a9dbb0202992a01c678c68c616cf18b8b8250b8b4dfaa6e9a53f8e350c9fcc0ad3026ffe5218b6572c41d7b00ef52f5b6cb19b4729c4d4b05fdcd3a4654433587f3458bb40a9459f0dcdf665650e3cff2d1d8043d1d8cae7c3fcc7c2fa85e24cc4ffda643ab0c660f72eb111ff56674732fe4ca23dc5cb23747e7d366e4e1b67e57fc4055edcade1dc1919d8ef090acdd63d4d71f12307f558a3a8e67f1ba7f7caba39a8928452d042b6b8dd95d3e00103a9", 0x1000}, {&(0x7f0000008140)="e6a713a07367c300a25470c7c39cec94b519d183b21f7f778740c168155ff0853d7aec70ba83650bb74321949e87874e02b83c0ef8e6168db96923406c746dd816a02599bf5c52438847a9b20d369429bc87e220", 0x54}, {&(0x7f00000081c0)="64cf9ebe62b5cb5e0b5e2731e6c6466fcf586a8a9058a40a4dfb2aa5a2b473ca75e581ebd689b19fac0a5ac34bb6a785b9d2e3e8fdba8c56ae208b18c55d167a639a7ff01746f009ff", 0x49}, {&(0x7f0000008240)="2e5ed77e6f0755e8586e827d58ff9d221054d563767edb7ddea93be4572fe9043291a72fb3d9d6fd1b7242d8a52697b8b038626d0771a703061f5cf58431f2deb25fda3255202701ee22238f2be58536d2cc3c19d8c7dcbcd5f361bb891d5ae209234e5c30cdb6705e9e5f00fd1941387880aeac1d724cb0cf23767593739e01854f8c4c8ed04d90afdcd5f6a5bcff68e73a03b683971e6342e51a2fac1b294345d7bf", 0xa3}, {&(0x7f0000008300)="779204c042", 0x5}], 0xa, &(0x7f0000008680)=[@cred={{0x1c, 0x1, 0x2, {r0}}}, @cred={{0x1c, 0x1, 0x2, {0x0, 0xffffffffffffffff}}}, @rights={{0x28, 0x1, 0x1, [0xffffffffffffffff, 0xffffffffffffffff, r2, 0xffffffffffffffff, 0xffffffffffffffff, r1]}}, @cred={{0x1c, 0x1, 0x2, {0x0, 0xee01}}}, @cred={{0x1c}}, @rights={{0x2c, 0x1, 0x1, [r2, 0xffffffffffffffff, 0xffffffffffffffff, r2, r3, r3, 0xffffffffffffffff]}}, @rights={{0x14, 0x1, 0x1, [0xffffffffffffffff]}}, @rights={{0x38, 0x1, 0x1, [0xffffffffffffffff, 0xffffffffffffffff, 0xffffffffffffffff, r2, 0xffffffffffffffff, 0xffffffffffffffff, r5, r4, 0xffffffffffffffff, 0xffffffffffffffff]}}, @rights={{0x1c, 0x1, 0x1, [r5, r6, r5]}}], 0x148, 0x4000000}}, {{&(0x7f0000008800)=@abs={0x0, 0x0, 0x4e23}, 0x6e, &(0x7f0000008b40)=[{&(0x7f0000008880)="cc1a55c0db6cfa20a0b1a012e30b9dcdced1144f3789683a650edfb8fafd645d67246d41ebd07f4ac48ceed488fbcfa221acc43bf2561cdda8bb5f34d38ae5d704eef5f070bc977fb2b852fc2533cf54ec3b918bb50a5f53ecce1b69331e14f1fadfa103fc3c415be84992182d285e430d7772744a6cd8eefbdfb3ac67713a52f79cda7f0d4fc08991fc162c71a2b8178296d4e20f", 0x95}, {&(0x7f0000008940)="10cd8ca840a1b965ba4a4918fe4a3a5dd636a2413af3e78a75c23342371e0d6e4c2352695852cd3d73e3b2dbf6e226ddbc09fe835fa7417e0c71df5ec97f7e21adbc8ed1bf2196d0579754d6db585894396de5d3879ea0b5087b42ed5f5f80814980ae3a6d6cd1e8bb5fa7005af7ca6968e906a0a8149884344b15688e654345edf491861fe092735e8b24e61743f6", 0x8f}, {&(0x7f0000008a00)="79abf08a74d87666dc25b653dbf7148a42189d31ade997570be7cf10cadebc", 0x1f}, {&(0x7f0000008a40)="11037f5121457c29124c57d5c1f9599ef04d175d3b285c1ed702305098d4f4f3679783f61313e218ceac48a7b7a66fba53d6b82efa4f4323bb109dbbb2e14ed9c872be07e1863db3d8a8bd7ff71ef4497d87cf246f27e703f2882eeb0e6463d414e966e819168b86261c4f5505aef532011fa862af2441fceedc3105233325879d74", 0x82}, {&(0x7f0000008b00)="425c258afb51faf65fe82c", 0xb}], 0x5, &(0x7f0000008bc0)=[@rights={{0x14, 0x1, 0x1, [r7]}}], 0x18, 0x8800}}], 0x8, 0x1) sendmmsg(r5, &(0x7f0000000240)=[{{&(0x7f0000000180)=@x25={0x9, @remote={'\xcc\xcc\xcc\xcc\xcc\xcc\xcc\xcc\xcc\xcc\xcc\xcc\xcc\xcc', 0x0}}, 0x80, &(0x7f00000000c0)=[{&(0x7f0000000880)="13605816daf02163493b4bef45fa04487a241e8fe89fe0326666950700b1c735957fb8396e7b9859c11fff0fdd3f71ea1ee530ddd0efc986ffe0d3daff68eb0f9954fcaff13bbef6617b44d13c4fb18bee911148cb979acf9de4893214f913ec63f0006fc7678892e291d0614a235964376530b15c0d6094273c2e4cd70a19ebc1da4899b42a2b0c26d304e6ce2e3fe842826629d7009fcf92cdcebaf8b2cc6be100848ccbf513f9c3f29a1429abf7087cd63c0fe8bca730dab44635d3f88c1df9a76b84a468e3c3b9771e408171393a6974748f755b1ea9791279af73a6ee7606b4cd6c935607fa267f40ccf0f5edb6200ef65a79af173ae743bb50bdc7daef9472cbb421dfe6c505d9f9abc9f8ab138b25316b7f87afe5b0ec2115285a992f80c37a94a9ea01966089aef97d794de5fef79a12edf9f195e6f46b564f050b1034901f79ab52c7f14a23660e546b7a508bc8e6584c4e1450e0397ce8b58137ba3660a1be8a2d08aaaad7af3523b7ea9763e515d35cd4d31ee9447171f0057a157cc53a49c83acb4e57d337ae22bf735803c9944e8f29f3480550ba733c2f67fecc5da231a8336e0a14423ecda06ffb93192f928372984fd5df1deb03542dff38e0bc4045101b18f396cd085ac987fc42740cc4deef0bc37a321178b26bf14c2fe39efd0880107a424c20050fd5cccb0d7f1d13244e177f6ea72f44a167839017f853a064b38d5294d02ed8447866d662732d563a38fad559175307da511620c7f0a856c4cf616bc96ba75c6ecea75e978c52f562fc97feea2fcd60bb992f405ba96f568afcd16c428e57f9be3e19b15fc24d0d35b78b64c3c57b6feee0512f8db0e3dfc1486db25e8b2c29c2e3b9c9b1df54ef8a5e6a5f6e103fdfb0e7eaed80171c1f834ff52d943ee9544eb061f099faada30b3991c1ca2e2aae37170ecf0cac007985894d2054c34a22f6c2eebb558fdea66dc842020bee9e7452c6b45b5f831a9e5aebfa2a3266b07f3527ad91379e106e9d5271af3f2fc51adf65e373be1dbca678091a17ea4e36f747e1abda8fb249c8d5081fdf0c0f1adbfec2a137ac0e04a9de196110426141446e4c5e8c0dee346288215bbe2d481664ac3d0583d00adfb1faa21cbd8fd03594894c8a508a3c6437cc1fee0ae4dbe556cf14bc1e644c59bf88b90391246a709951b187e561699fc9cf3a140c538649a8b785180946d28d012e149e506a9cbe2739e68b64bbb2e24e5e49f852624bac41511c7ce84a7559e899756001bff7be395d2935d0eb77b12f0c7c408a1489a93fa353bc7224291a264e5d00820cee943803a3915e5ad59358c5d49e9d018e4032d778faa8f1b5319d309bd1ecade39ed49809b04bbf4499edfa2ebe181476d7216f3ba1c20efdd85a36d81dc0061367733c9fd83b7688b10a35a2fc621d3a08a9347748a9a7ec547b7009762af44e4de87b6dbd3451dca1871b766836f0604c44989b4c976cca2f7973a3394e54fa50712d343947f8ddcebda0056696efa049e8ff7b99ba34283a6cb8dc99305704e1f42b9ce0ca9d825f7d0da038723954ae1100d5429eddb409047d5d8ca8dc825e8e211d5c7b7d7328c73928eaf767bda399784f0752556309a61ec0b4c2be09a71b10f97a14749c6abce530744a308c587ad38c6a907a5acd3c2bdee983186c82687dbd041b3471364fded9c2c347885d831854d21e0f3db455a13287fc292eb702169042ac8746a5bbfc9bfa3ffcedc34ebb82f63162dc631c3cf05b5256feca26d2d12b3bbdbca0e393c899e8ee31c19f8a4a6ee4e87701379482c35126675cff6c22329e398692c244b20c821992c3a0ae30c91cb86b7afb7215a19a9da0e0816b462d84357c39cccce553787e19142fd711a7f764b48347c7bb1d50e4269890c9aa55286c7df11075d8bca64072e0dfb6ccd48dd9a22b3e966eb07bd37a981d5e5f614f8c12179125d81bbaf0f3e70bcb26a12d855c25226a55e679c89d522de6039f918fba9ad6c50ccb999ea4607730cc17df61cd5bf375e8c298b4a126aa2b5a72cbfa1a249d7640ea3d09621439ee96c64aedc27365647c292c6006af9769a3b98dd1f18c129e9a85e947d570091e93798c22e12f3f315d9cb937bb262077f153e2a8140b70987d7b6fdb003e6e798f434f65d7e2ef41934aa6d78369c4421ca9c8b97bcfc60c321fc5df669a337867ca24536a23c35d159fb966b7675ba95f7b88615159752a312eb61175c250bc0d093c810dd670a4eaa5598be68d51ceaf4c1e7f16bfb8e9c31d3b8aedd0cc081254fc15c0f96119ec02b0f58e5a5c4c740125697a2947b4ffa5a1dc1fbf31b9abf6cd19bc8b8a355f2770b44065143f056d990a541ac528d0ecd61a118552a87fbdd3bac92753b25e3d229e7f988b131097b561c14a6893ae5bfbed63b3267f6df95080031ea1fb02e8c7c068f035564a1143be1689ac8e4e7391ea049f28e670f60ef1db97aad2535c43f3eff1800299a8ed298d9e1470a5a7cd468f35f9ace181cd3c7650374f820094db5d69bb2b7eaa78c19b27c1c90357922e35068219153bb8066ed171f8932f48f39768b1c3ba14526bf926205f57549ba6290523dea090de64c56d9665858385b4db9b9421e749c7f822f16a383ed3938a4d85189c3d943495814d533bac1444a3e6ed3dee3ab08d82a8833e14256e1b42b82e098c1690ba91e3769c5c569a4341bca12b77e72f2b4a5288586f88d7a689c9703c26e7fdd24e8e9be1814520d1fdb3a24ffdfda82a51abd99c2b6f047d957e5e4f58e79e70578d00e1d7442a2e7685801186e1bd86629795437a16bcd8bba774bc5bf878979fe338f40274c83b2e3d31862b850285c88bb15cb79dedfae75366214d19780abb848114fd323e5c6f6c3a61541ead7ce76014c67739bf09f6ef965752f2c9983a34018b3df330b898ddcc7026d2a30da993806f0b7d7d771e64a086453d4636349a39577dfb118b57cc497d14318239f270360613e0f55f85f24a15236537ae9fdb1233fd82e4aa17f412c73446054eaf654759865b71f4aa3e1965a5b95f04f7a66ce053b4dfd4d3aa14d868079ef20bea58a0cd8b0cabb8030c5d398023b13921c32d4214e2638c161b3fec72057de80d4784a59e80aabfcd7fab6251f9beeb4a0df3882d1ff90cf0daabc35a0d07eb81d4b4e17de5064e36b739bd7cafd742ee22cba3a287711921bcb3c1c99283ebb9a961c4ef4be24db48fd906e859bc4fefdf64bbf4c08b7980df7932e5cfdacb06ed15c2582e2bbf2293bacf4d6f2d7f05020fc95f017f72e625eda2633588aec4e18fdab1841abc3805b2e11ce194e8413e53c367c1706610e4a21fed2b6fc3d2aea9fc25c9571b8cc6f65e96ffbfaf42a785891474d0bceeae7594ceddf949c69cdb37551512df1e762bdd70fe0bbc80d63fedb6a4658b13efdd20b90ccafe1dc7cb38a85085fed8cdf379f9e503b77981be265010c18754982e4582471cd42b8bfb6c16a86cb1122fb87c81a69bfe36618231b9e22491ad0a6ee512de7c666e892119f74962b23bf966c154149eeb611d310b7bc027c3ef612e20eca8fa2aca4691537a48103b8a5ee29bbe9be011869b2aa7e4c04896f0038cd7ae13aa67298c0ad3bf725509d8cf3861d0552668cbe7c559ec87a5b13f34199b8cd3d1c415497d268638bc27e6a280e51afad56be7b8e404a2edb257eebe3038e3a2a9209a9df5f1b061a9c4cd3131bc98f7e6f445e6acdb3a8138c456ed1a140c12e620c3081fbf481e6bc0534600685e66182d4b52dace670dadf0ac8f9cfe807da89e3df0e1bd6a2dc3c92c99341b66ef4065377545c74934a7524755e125fb32d773ed80949f1bb096b4d16abc937c30e6f7e65e897d50c0c061c3da63fe81cf56004590e7dea3ae8d62aa12af284516d623d24edcd5f8cc1c0cc713626e60461f894402eabc1827792ad04d9aaf449ee11bedf889a636ded52757c94a54a03c84ed590b40c8288f8016169b65ddd16cfef5741d1437f3b97f45e48393926ed841a73d80c9423ff3d6db6879f1964b6415bfe6e0ec1fadf852dde39a644a789de68f14487dd34f853b67e7c7c51991a0f299ffff58e9b13cdb29a44763178c73c3ece25aa9050a66415b5710bd68833992ec22d3d27ec0c89051e541e8649de614dc0fda2d8b5282cae6f55e70b9df1466e9dd90b4487edb94d3adceb92246d6b31313e0726a90a15033193db47724bae21a1b7309a914eb6c856247fe8b707579ad94c295de9363a0ded7efb7d3fd8d8cd7d6857d9d82083aa051883269351014f4ea9e8785267ecaf5d9ba8d5b5363fe990a03283bccd9aecec3fe921cf760720da7e8649f4fa390e8560f45cbfa3c3abb4fdc3df9ab4c202d21848178bc4dd36c7e96360b81556cba3f4a44e7a60dc4a2c56e8c440366b7c63d9799de3e458ee00578346767be33dc3bc53523e558af6d2a3eef6194981c2c6b739e732d3b071b2509d3185c0745b3f9dca8336cb3dc8fd4a7b3968daf17818f71ac4a3b55fea7369ff958b77df077f46627035f7351fb95f3dfd07905dab8a52696545c89340187d28265aa279f6104df8b521a2ccbf9fac0bbadecc966a6213352c0890bdaa6233a3252c77facc0cb63af5df188a3c5006f90fdec40534c6e74ee3751a52cc9c8b842e8cb45d2663a86a3995975754c692f65d0bacdd1124abbe0888e2bd7ec199fa243eb628d80387f920f4cde58596c3166b5600f0453c2ba0ec79b513c804b36bae0a839aecb40d1adc78f9370a5bb5b6c2fd79d6233cea1b8a52ec69608a4b02ba46b7c918713d747dd7d20607bd98f1f6a463ce58ba6861ad65f6a4608796a0718f114ae32c8d15170e02b317c383a41c6d2db4d2a368c6e170cad5b19109eeaf389638a80fa8107f7ae5114e58822bea6500a5ad31158b09fa14602654412c62f55b46cc1806a4028f44e233300dfbb33a1855143a867f618c6dd19ad53a3c5c6132d24bdb7df9cd6fa1bf7fd79f5b9f31b58d19201b4c84d430665b39f2dfbe37fb62749abde2ecd4cb78f095a7c00c1c35f188035f3a8e9700d89892cdc9af6720a00ea4fff3204437045f35f2248b72f58e7f0c8370b0385c68bed1b0110f91901eedc437a8e0b5527281305c9d43ce9e2d90053723ae2d7a4875b4342e192aea2923bee5bfc0c082d5fa10ccdebf77d1a4a5486a6f43e3eef2d08633e2e6e0dd6243c9aec5215129a2595e4b664b3641141d0b749490ebdb398af126f45c21c3e958c747b741525d05020879ce2ed59412ac717945f463c3c311a5dbd8a266484e69699467b96f750b32ca434745ac771e0d7351fde6d64fb69493dd4f8183be6384a20519b63cba26dee55073a52752aaeb42f6329d72bf8c32d9d724e71700bcfc6f828b828c09502faa67ffd74e95a6ecd7042338a5780b916dcdce1abe963c01c60c046c3163b068449e88986bfd8b1221ea2c0bc0f1e16682d92750f36db19b3547794fc8c298b8c5cacfffc3a6d4e5c5031b2e0b182f1f1cb48b1a081bb481487f70c93584df0f18ba9139b5f7fb4ddf6cfe48b37e0197940ae10d75a0b9a83d419b5401d96499939caf38f7e122ae7f7a8b4ee664e1a71cc9f970cec13dc81a16411d8a12e59530b7e9e1d607e72642e2d20a2dcbcd9f5d0b3414e6aeac83d9f5e71dc669db80ba97d28d0634a0f8c1db31cdb013d592d96ab4c656e76a4a8a8868fbe989578a2837e9bcaf389116fd68f68a81126bb7d8c3ffac4b600aaa935365bd72940dd4c", 0x1000}], 0x1, &(0x7f00000002c0)=[{0xc8, 0x1f5, 0x4a5, "baf6981082303aa7698457d80ca030e959270fae9cb4e4966801ba78bad8071c905ee7859067086d1a671cc4d803f1dc2bb9578f7fb361b7f93b7efffe98418c4b6dcc0975ff9a3c7d0730e17ca0e1d61ccd259f85a6606a03dd29d327fb7dd3789b89653f3042fb63badf1c3a07a983649b4ac30d906dee6d6186b409158f62203ba0db80efc61330f4db46e97d298a9c96ec104cbff3ba61c02b3a29cf3b5de5c2bcabbe68b53f4fe3939db0cc94a61b49d8ec"}], 0xc8}}], 0x1, 0x4008880) getpgid(0x0) (async) syz_clone3(0x0, 0x0) 00:02:54 executing program 4: connect$inet(0xffffffffffffffff, &(0x7f0000000140)={0x2, 0x4e22, @local}, 0x10) r0 = openat$binderfs(0xffffffffffffff9c, &(0x7f00000000c0)='./binderfs/binder0\x00', 0x0, 0x0) ioctl$BINDER_SET_CONTEXT_MGR_EXT(r0, 0x40046207, 0x0) r1 = openat$binderfs(0xffffffffffffff9c, &(0x7f00000000c0)='./binderfs/binder0\x00', 0x0, 0x0) ioctl$BINDER_WRITE_READ(r1, 0xc0306201, &(0x7f0000000080)={0x8, 0x0, &(0x7f0000000400)=ANY=[@ANYBLOB="04630440"], 0x0, 0x0, 0x0}) r2 = dup3(r1, r0, 0x0) ioctl$BINDER_WRITE_READ(r2, 0xc0306201, &(0x7f0000000040)={0x4, 0x0, &(0x7f0000000000)=[@register_looper], 0x1, 0x7000000, &(0x7f0000000100)='9'}) ioctl$BINDER_WRITE_READ(r1, 0xc0306201, &(0x7f0000000700)={0x10, 0x0, &(0x7f0000000580)=ANY=[@ANYBLOB="0e630c40"], 0x7000000, 0x0, 0x0}) ioctl$FICLONERANGE(r2, 0x4020940d, &(0x7f0000000180)={{r2}, 0x589, 0xffffffff80000001, 0x10001}) 00:02:54 executing program 5: prlimit64(0x0, 0xe, &(0x7f0000000140)={0x8, 0x8b}, 0x0) (async, rerun: 64) sched_setscheduler(0x0, 0x2, &(0x7f0000000080)=0x6) (async, rerun: 64) sched_setaffinity(0x0, 0x8, &(0x7f00000000c0)=0x5) (async, rerun: 64) r0 = getpid() (rerun: 64) sched_setscheduler(r0, 0x1, &(0x7f0000001700)=0x4) (async, rerun: 64) socketpair$unix(0x1, 0x2, 0x0, &(0x7f0000000200)={0xffffffffffffffff, 0xffffffffffffffff}) (rerun: 64) connect$unix(r1, &(0x7f000057eff8)=@abs, 0x6e) (async) sendmmsg$unix(r2, &(0x7f00000bd000), 0x318, 0x0) (async) recvmmsg(r1, &(0x7f00000000c0), 0x10106, 0x2, 0x0) (async, rerun: 64) clock_gettime(0x0, &(0x7f00000001c0)={0x0, 0x0}) (rerun: 64) utimensat(0xffffffffffffffff, &(0x7f0000000040)='./file0\x00', &(0x7f0000000280)={{0x77359400}, {r3, r4/1000+60000}}, 0x100) getpgid(r0) (async) r5 = getpid() sched_setscheduler(r5, 0x1, &(0x7f0000000240)=0x1) (async) sched_setattr(r5, &(0x7f0000000000)={0x38}, 0x0) (async) openat2(0xffffffffffffffff, &(0x7f0000000180)='./file0\x00', &(0x7f00000003c0)={0x480202, 0x0, 0x5}, 0x18) (async) connect$unix(0xffffffffffffffff, &(0x7f0000000b80)=@file={0x29ecd5f5c6164ce7, './file0\x00'}, 0x6e) (async) r6 = openat$cgroup_ro(0xffffffffffffff9c, &(0x7f0000000080)='cgroup.controllers\x00', 0x275a, 0x0) write$binfmt_script(r6, &(0x7f0000000240)=ANY=[], 0xfea7) (async) ioctl$FS_IOC_RESVSP(r6, 0x40305829, &(0x7f0000000100)={0x0, 0x0, 0x0, 0xd001}) 00:02:54 executing program 0: connect$inet(0xffffffffffffffff, &(0x7f0000000140)={0x2, 0x4e22, @local}, 0x10) r0 = openat$binderfs(0xffffffffffffff9c, &(0x7f00000000c0)='./binderfs/binder0\x00', 0x0, 0x0) ioctl$BINDER_SET_CONTEXT_MGR_EXT(r0, 0x40046207, 0x0) r1 = openat$binderfs(0xffffffffffffff9c, &(0x7f00000000c0)='./binderfs/binder0\x00', 0x0, 0x0) ioctl$BINDER_WRITE_READ(r1, 0xc0306201, &(0x7f0000000080)={0x8, 0x0, &(0x7f0000000400)=ANY=[@ANYBLOB="04630440"], 0x0, 0x0, 0x0}) r2 = dup3(r1, r0, 0x0) ioctl$BINDER_WRITE_READ(r2, 0xc0306201, &(0x7f0000000040)={0x4, 0x0, &(0x7f0000000000)=[@register_looper], 0x1, 0x7000000, &(0x7f0000000100)='9'}) ioctl$BINDER_WRITE_READ(r1, 0xc0306201, &(0x7f0000000700)={0x10, 0x0, &(0x7f0000000580)=ANY=[@ANYBLOB="0e630c40"], 0x7000000, 0x0, 0x0}) ioctl$FICLONERANGE(r2, 0x4020940d, &(0x7f0000000180)={{r2}, 0x589, 0xffffffff80000001, 0x10001}) 00:02:54 executing program 2: r0 = open_tree(0xffffffffffffff9c, &(0x7f0000000640)='\x00', 0x89901) mkdirat(r0, &(0x7f0000000140)='./file0/../file0\x00', 0x0) r1 = openat$incfs(0xffffffffffffff9c, &(0x7f0000000000)='.pending_reads\x00', 0x440, 0x0) ioctl$FS_IOC_SET_ENCRYPTION_POLICY(r1, 0x40086607, &(0x7f0000000040)=@v1={0x0, @aes256={0x0}, 0x0, @auto="0709f2c5e99fcbce"}) r2 = openat2$dir(0xffffffffffffff9c, &(0x7f0000000100)='./file0\x00', &(0x7f0000000180)={0xd4002, 0x0, 0x1}, 0x18) symlinkat(&(0x7f0000000080)='./file0\x00', r2, &(0x7f00000000c0)='./file0\x00') unlinkat(r0, &(0x7f0000000040)='./file0\x00', 0x200) 00:02:54 executing program 5: prlimit64(0x0, 0xe, &(0x7f0000000140)={0x8, 0x8b}, 0x0) sched_setscheduler(0x0, 0x1, &(0x7f0000000080)=0x7) r0 = getpid() sched_setaffinity(0x0, 0x8, &(0x7f0000000240)=0x2) sched_setscheduler(r0, 0x2, &(0x7f0000000200)=0x4) socketpair$unix(0x1, 0x2, 0x0, &(0x7f0000000200)={0xffffffffffffffff, 0xffffffffffffffff}) connect$unix(r1, &(0x7f0000000180)=@abs, 0x6e) sendmmsg$unix(r2, &(0x7f00000bd000), 0x318, 0x0) recvmmsg(r1, &(0x7f00000000c0), 0x10106, 0x2, 0x0) r3 = socket$inet_tcp(0x2, 0x1, 0x0) bind$inet(r3, &(0x7f00000000c0)={0x2, 0x4e20, @broadcast}, 0x10) mkdirat(0xffffffffffffffff, &(0x7f0000000040)='./file0\x00', 0x20) socketpair$unix(0x1, 0x5, 0x0, 0x0) sendto$inet(r3, &(0x7f0000000140), 0xffffffffffffff58, 0x20008005, &(0x7f0000000100)={0x2, 0x4e20}, 0x10) bpf$PROG_LOAD(0x5, 0x0, 0x0) bpf$BPF_RAW_TRACEPOINT_OPEN(0x11, 0x0, 0x0) r4 = bpf$MAP_CREATE(0x0, &(0x7f0000000340)=@bloom_filter={0x1e, 0x7, 0x6, 0x0, 0x18, 0xffffffffffffffff, 0xfffffffb, '\x00', 0x0, 0xffffffffffffffff, 0x4, 0x4, 0x5, 0x9}, 0x48) ioctl$AUTOFS_DEV_IOCTL_VERSION(0xffffffffffffffff, 0xc0189371, &(0x7f0000000440)=ANY=[@ANYBLOB="0100000001000000180000009fd728af6a76d654dc62c386a477d68456c193d74775d4b143d1e3a8b12ffcc18e99ed2d653ad7a4e56020f62fa01b24e0cea525aa0b68b118d27bb91bcbc1072180e76ba8bb08bdfd534563", @ANYRES32=r4, @ANYBLOB='\x00\x00\x00\x00\x00\x00\x00\x00./file0\x00']) bpf$MAP_CREATE(0x0, &(0x7f0000000280)=@bloom_filter={0x1e, 0x6, 0x100000, 0x5, 0x180, 0xffffffffffffffff, 0x3, '\x00', 0x0, r5, 0x3, 0x4, 0x1, 0x3}, 0x48) recvfrom(r3, &(0x7f00000003c0)=""/120, 0x78, 0x0, 0x0, 0x0) [ 174.329094][ T4497] binder: 4488:4497 ERROR: BC_REGISTER_LOOPER called without request [ 174.329110][ T4497] binder: 4497 RLIMIT_NICE not set [ 174.329549][ T4498] binder: 4494:4498 ERROR: BC_REGISTER_LOOPER called without request [ 174.329564][ T4498] binder: 4498 RLIMIT_NICE not set [ 174.379943][ T4497] binder: 4488:4497 ioctl c0306201 20000040 returned -14 [ 174.379982][ T4503] binder: 4488:4503 ioctl c0306201 20000700 returned -14 [ 174.381638][ T4504] binder: 4494:4504 ioctl c0306201 20000700 returned -14 [ 174.381771][ T4498] binder: 4494:4498 ioctl c0306201 20000040 returned -14 00:02:54 executing program 3: syz_read_part_table(0x200000, 0x1, &(0x7f0000000000)=[{&(0x7f0000000080)="0201630000000a000000ff45ac000000070082ffffff00080000fcff134000ff0300bfffffff001f00000004000000f93fd505c1d71107000000008008da55aa", 0x40, 0x1c0}]) syz_read_part_table(0x7fffffffffffffff, 0x1, &(0x7f0000000040)=[{&(0x7f00000000c0)="5375545cdbbc80c51098d268b57df470cfc96bb8fb90587ca81b7789e23b8c33983186a4455c89b72f57e9fc3fcfcf77f32732500b1427479aa1d9d623056fb73b8b0ee708a9132a832daf109417a365bec7dff359af8bab68232e0b50de75c1b62c31acfc5a0dc69c89eee6ffa1", 0x6e, 0x471f}]) syz_read_part_table(0x200000, 0x1, &(0x7f0000000000)=[{&(0x7f0000000080)="0201630000000a000000ff45ac000000070082ffffff00080000fcff134000ff0300bfffffff001f00000004000000f93fd505c1d71107000000008008da55aa", 0x40, 0x1c0}]) (async) syz_read_part_table(0x7fffffffffffffff, 0x1, &(0x7f0000000040)=[{&(0x7f00000000c0)="5375545cdbbc80c51098d268b57df470cfc96bb8fb90587ca81b7789e23b8c33983186a4455c89b72f57e9fc3fcfcf77f32732500b1427479aa1d9d623056fb73b8b0ee708a9132a832daf109417a365bec7dff359af8bab68232e0b50de75c1b62c31acfc5a0dc69c89eee6ffa1", 0x6e, 0x471f}]) (async) 00:02:54 executing program 4: r0 = socket$packet(0x11, 0x3, 0x300) r1 = socket$nl_generic(0x10, 0x3, 0x10) ioctl$AUTOFS_DEV_IOCTL_CLOSEMOUNT(0xffffffffffffffff, 0xc0189375, &(0x7f0000000000)={{0x1, 0x1, 0x18, r1}, './file0\x00'}) setsockopt$packet_add_memb(r2, 0x107, 0x1, &(0x7f0000000040)={0x0, 0x1, 0x6, @random="2fb4b0ee55a5"}, 0x10) ioctl$sock_SIOCGIFINDEX(r1, 0x8933, &(0x7f00000003c0)={'netdevsim0\x00', 0x0}) r4 = bpf$PROG_LOAD_XDP(0x5, &(0x7f0000001800)={0x6, 0x3, &(0x7f0000000500)=ANY=[@ANYBLOB="1800000000000000000000000000000095"], &(0x7f0000000300)='GPL\x00', 0x0, 0x0, 0x0, 0x0, 0x0, '\x00', r3, 0x25, 0xffffffffffffffff, 0x8, 0x0, 0x0, 0x10, 0x0}, 0x80) bpf$BPF_LINK_CREATE_XDP(0x1c, &(0x7f0000000080)={r4, r3, 0x25, 0x8}, 0x10) r5 = socket$nl_generic(0x10, 0x3, 0x10) r6 = syz_genetlink_get_family_id$l2tp(&(0x7f00000002c0), 0xffffffffffffffff) sendmsg$L2TP_CMD_TUNNEL_CREATE(r5, &(0x7f0000000240)={0x0, 0x0, &(0x7f0000000200)={&(0x7f0000000040)={0x3c, r6, 0x923, 0x0, 0x0, {}, [@L2TP_ATTR_PROTO_VERSION={0x5}, @L2TP_ATTR_CONN_ID={0x8}, @L2TP_ATTR_ENCAP_TYPE={0x6}, @L2TP_ATTR_PEER_CONN_ID={0x8}, @L2TP_ATTR_IP_SADDR={0x8, 0x18, @dev}]}, 0x3c}}, 0x0) ioctl$sock_SIOCGIFINDEX_80211(r0, 0x8933, &(0x7f0000000140)={'wlan0\x00', 0x0}) sendmsg$NL80211_CMD_GET_MPP(r5, &(0x7f0000000200)={&(0x7f0000000100)={0x10, 0x0, 0x0, 0x10}, 0xc, &(0x7f00000001c0)={&(0x7f0000000180)={0x40, 0x0, 0x800, 0x70bd28, 0x25dfdbfc, {{}, {@val={0x8, 0x3, r7}, @val={0xc, 0x99, {0x101, 0x53}}}}, [@NL80211_ATTR_MPATH_NEXT_HOP={0xa, 0x1a, @device_b}, @NL80211_ATTR_MPATH_NEXT_HOP={0xa, 0x1a, @device_b}]}, 0x40}, 0x1, 0x0, 0x0, 0x4000001}, 0x0) setsockopt$packet_add_memb(r0, 0x107, 0x1, &(0x7f00000000c0)={r3, 0x1, 0x1, @broadcast}, 0x10) 00:02:54 executing program 0: syz_mount_image$vfat(&(0x7f0000000040), &(0x7f0000000100)='./file0\x00', 0x4017, 0x1, &(0x7f0000000240)=[{&(0x7f0000000440)="eb3c8f000000732e66617400020101000240008088f801", 0x17}], 0x0, &(0x7f0000000180)=ANY=[], 0x0) ioctl$sock_SIOCSIFBR(0xffffffffffffffff, 0x8941, &(0x7f0000000080)=@get={0x1, &(0x7f0000000480)=""/229, 0x5}) chdir(&(0x7f0000000140)='./file0\x00') r0 = openat$cgroup_ro(0xffffffffffffff9c, &(0x7f0000000000)='cpuset.memory_pressure\x00', 0x275a, 0x0) write$binfmt_script(r0, &(0x7f0000000000)=ANY=[], 0x1670e68) mmap(&(0x7f0000000000/0xb36000)=nil, 0xb36000, 0x2, 0x28011, r0, 0x0) fdatasync(r0) madvise(&(0x7f0000000000/0x600000)=nil, 0x600000, 0x64) ftruncate(r0, 0x796c) fstatfs(r0, &(0x7f0000000300)=""/158) 00:02:54 executing program 2: r0 = open_tree(0xffffffffffffff9c, &(0x7f0000000640)='\x00', 0x89901) mkdirat(r0, &(0x7f0000000140)='./file0/../file0\x00', 0x0) (async, rerun: 32) r1 = openat$incfs(0xffffffffffffff9c, &(0x7f0000000000)='.pending_reads\x00', 0x440, 0x0) (rerun: 32) ioctl$FS_IOC_SET_ENCRYPTION_POLICY(r1, 0x40086607, &(0x7f0000000040)=@v1={0x0, @aes256={0x0}, 0x0, @auto="0709f2c5e99fcbce"}) r2 = openat2$dir(0xffffffffffffff9c, &(0x7f0000000100)='./file0\x00', &(0x7f0000000180)={0xd4002, 0x0, 0x1}, 0x18) symlinkat(&(0x7f0000000080)='./file0\x00', r2, &(0x7f00000000c0)='./file0\x00') (async) unlinkat(r0, &(0x7f0000000040)='./file0\x00', 0x200) [ 175.026947][ T4512] loop0: detected capacity change from 0 to 32 [ 175.038350][ T4511] device netdevsim0 entered promiscuous mode [ 175.040288][ T4509] device netdevsim0 left promiscuous mode 00:02:55 executing program 2: r0 = open_tree(0xffffffffffffff9c, &(0x7f0000000640)='\x00', 0x89901) mkdirat(r0, &(0x7f0000000140)='./file0/../file0\x00', 0x0) r1 = openat$incfs(0xffffffffffffff9c, &(0x7f0000000000)='.pending_reads\x00', 0x440, 0x0) ioctl$FS_IOC_SET_ENCRYPTION_POLICY(r1, 0x40086607, &(0x7f0000000040)=@v1={0x0, @aes256={0x0}, 0x0, @auto="0709f2c5e99fcbce"}) (async) r2 = openat2$dir(0xffffffffffffff9c, &(0x7f0000000100)='./file0\x00', &(0x7f0000000180)={0xd4002, 0x0, 0x1}, 0x18) symlinkat(&(0x7f0000000080)='./file0\x00', r2, &(0x7f00000000c0)='./file0\x00') unlinkat(r0, &(0x7f0000000040)='./file0\x00', 0x200) 00:02:55 executing program 4: r0 = socket$packet(0x11, 0x3, 0x300) (async) r1 = socket$nl_generic(0x10, 0x3, 0x10) ioctl$AUTOFS_DEV_IOCTL_CLOSEMOUNT(0xffffffffffffffff, 0xc0189375, &(0x7f0000000000)={{0x1, 0x1, 0x18, r1}, './file0\x00'}) setsockopt$packet_add_memb(r2, 0x107, 0x1, &(0x7f0000000040)={0x0, 0x1, 0x6, @random="2fb4b0ee55a5"}, 0x10) (async) ioctl$sock_SIOCGIFINDEX(r1, 0x8933, &(0x7f00000003c0)={'netdevsim0\x00', 0x0}) r4 = bpf$PROG_LOAD_XDP(0x5, &(0x7f0000001800)={0x6, 0x3, &(0x7f0000000500)=ANY=[@ANYBLOB="1800000000000000000000000000000095"], &(0x7f0000000300)='GPL\x00', 0x0, 0x0, 0x0, 0x0, 0x0, '\x00', r3, 0x25, 0xffffffffffffffff, 0x8, 0x0, 0x0, 0x10, 0x0}, 0x80) bpf$BPF_LINK_CREATE_XDP(0x1c, &(0x7f0000000080)={r4, r3, 0x25, 0x8}, 0x10) (async) r5 = socket$nl_generic(0x10, 0x3, 0x10) (async) r6 = syz_genetlink_get_family_id$l2tp(&(0x7f00000002c0), 0xffffffffffffffff) sendmsg$L2TP_CMD_TUNNEL_CREATE(r5, &(0x7f0000000240)={0x0, 0x0, &(0x7f0000000200)={&(0x7f0000000040)={0x3c, r6, 0x923, 0x0, 0x0, {}, [@L2TP_ATTR_PROTO_VERSION={0x5}, @L2TP_ATTR_CONN_ID={0x8}, @L2TP_ATTR_ENCAP_TYPE={0x6}, @L2TP_ATTR_PEER_CONN_ID={0x8}, @L2TP_ATTR_IP_SADDR={0x8, 0x18, @dev}]}, 0x3c}}, 0x0) (async) ioctl$sock_SIOCGIFINDEX_80211(r0, 0x8933, &(0x7f0000000140)={'wlan0\x00', 0x0}) sendmsg$NL80211_CMD_GET_MPP(r5, &(0x7f0000000200)={&(0x7f0000000100)={0x10, 0x0, 0x0, 0x10}, 0xc, &(0x7f00000001c0)={&(0x7f0000000180)={0x40, 0x0, 0x800, 0x70bd28, 0x25dfdbfc, {{}, {@val={0x8, 0x3, r7}, @val={0xc, 0x99, {0x101, 0x53}}}}, [@NL80211_ATTR_MPATH_NEXT_HOP={0xa, 0x1a, @device_b}, @NL80211_ATTR_MPATH_NEXT_HOP={0xa, 0x1a, @device_b}]}, 0x40}, 0x1, 0x0, 0x0, 0x4000001}, 0x0) (async) setsockopt$packet_add_memb(r0, 0x107, 0x1, &(0x7f00000000c0)={r3, 0x1, 0x1, @broadcast}, 0x10) [ 175.129429][ T4512] Injecting memory failure for pfn 0x166d15 at process virtual address 0x20000000 [ 175.136298][ T4522] device netdevsim0 entered promiscuous mode [ 175.137849][ T4516] device netdevsim0 left promiscuous mode [ 175.167262][ T4524] loop3: detected capacity change from 0 to 4096 [ 175.175782][ T4512] Memory failure: 0x166d15: corrupted page was clean: dropped without side effects [ 175.218094][ T4512] Memory failure: 0x166d15: Failed to invalidate [ 175.219587][ T4512] Memory failure: 0x166d15: clean LRU page still referenced by 3 users [ 175.222374][ T4524] loop3: p1 p2 p3 p4 < > [ 175.223406][ T4524] loop3: partition table partially beyond EOD, truncated [ 175.225145][ T4524] loop3: p1 size 11290111 extends beyond EOD, truncated [ 175.226725][ T4519] Unable to handle kernel paging request at virtual address 00000000000012e8 [ 175.227475][ T4524] loop3: p2 size 1075052540 extends beyond EOD, [ 175.228877][ T4519] Mem abort info: [ 175.228909][ T4519] ESR = 0x0000000096000006 [ 175.228915][ T4519] EC = 0x25: DABT (current EL), IL = 32 bits [ 175.228920][ T4519] SET = 0, FnV = 0 [ 175.228924][ T4519] EA = 0, S1PTW = 0 [ 175.228928][ T4519] FSC = 0x06: level 2 translation fault [ 175.228932][ T4519] Data abort info: [ 175.228934][ T4519] ISV = 0, ISS = 0x00000006 [ 175.228937][ T4519] CM = 0, WnR = 0 [ 175.228941][ T4519] user pgtable: 4k pages, 48-bit VAs, pgdp=000000015c6a5000 [ 175.238641][ T4524] truncated [ 175.239082][ T4519] [00000000000012e8] pgd=08000001584d1003 [ 175.241059][ T4524] loop3: p3 start 7936 is beyond EOD, [ 175.241338][ T4519] , p4d=08000001584d1003 [ 175.242645][ T4524] truncated [ 175.243730][ T4519] , pud=08000001586d4003, pmd=0000000000000000 [ 175.243879][ T4519] Internal error: Oops: 0000000096000006 [#1] PREEMPT SMP [ 175.248204][ T4519] Modules linked in: [ 175.249072][ T4519] CPU: 0 PID: 4519 Comm: syz-executor.0 Not tainted 6.0.0-rc7-syzkaller-18095-gbbed346d5a96 #0 [ 175.251459][ T4519] Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 09/30/2022 [ 175.253523][ T4519] pstate: 204000c5 (nzCv daIF +PAN -UAO -TCO -DIT -SSBS BTYPE=--) [ 175.255194][ T4519] pc : mem_cgroup_track_foreign_dirty_slowpath+0x3c/0x1e4 [ 175.256755][ T4519] lr : mem_cgroup_track_foreign_dirty_slowpath+0x38/0x1e4 [ 175.258374][ T4519] sp : ffff800014b7b750 [ 175.259276][ T4519] x29: ffff800014b7b750 x28: ffff00011866cf80 x27: 0c00000000000001 [ 175.261112][ T4519] x26: 0000000000000001 x25: 0000000000000011 x24: 0000000000000100 [ 175.262875][ T4519] x23: ffff80000d309000 x22: 00000000ffffcf40 x21: fffffc00049b4540 [ 175.264618][ T4519] x20: ffff0000c46b7060 x19: 0000000000000000 x18: 00000000000000c0 [ 175.266285][ T4519] x17: ffff80000dd0b198 x16: ffff80000db49158 x15: ffff00011866cf80 [ 175.267978][ T4519] x14: 0000000000000000 x13: 00000000ffffffff x12: 0000000000040000 [ 175.269689][ T4519] x11: 000000000000256a x10: ffff800012b46000 x9 : 0000000000000000 [ 175.271576][ T4519] x8 : ffff0000c46b7000 x7 : ffff80000856806c x6 : 0000000000000000 [ 175.273256][ T4519] x5 : 0000000000000080 x4 : 0000000000000000 x3 : 0000000000000002 [ 175.275048][ T4519] x2 : 0000000000000010 x1 : ffff80000cb431b1 x0 : 0000000000000001 [ 175.276565][ T4519] Call trace: [ 175.277190][ T4519] mem_cgroup_track_foreign_dirty_slowpath+0x3c/0x1e4 [ 175.278415][ T4519] folio_account_dirtied+0x430/0x650 [ 175.279386][ T4519] __folio_mark_dirty+0xbc/0x180 [ 175.280333][ T4519] block_dirty_folio+0x11c/0x210 [ 175.281390][ T4519] folio_mark_dirty+0xbc/0x218 [ 175.282424][ T4519] filemap_page_mkwrite+0x26c/0x5ec [ 175.283541][ T4519] do_page_mkwrite+0x74/0x288 [ 175.284561][ T4519] wp_page_shared+0x8c/0x518 [ 175.285593][ T4519] do_wp_page+0x86c/0x111c [ 175.286553][ T4519] handle_mm_fault+0x878/0xa40 [ 175.287558][ T4519] do_page_fault+0x428/0x79c [ 175.288677][ T4519] do_mem_abort+0x54/0x130 [ 175.289637][ T4519] el1_abort+0x3c/0x5c [ 175.290498][ T4519] el1h_64_sync_handler+0x60/0xac [ 175.291658][ T4519] el1h_64_sync+0x64/0x68 [ 175.292677][ T4519] __arch_copy_to_user+0x104/0x234 [ 175.293815][ T4519] el0_svc_common+0x138/0x220 [ 175.294682][ T4519] do_el0_svc+0x48/0x164 [ 175.295500][ T4519] el0_svc+0x58/0x150 [ 175.296254][ T4519] el0t_64_sync_handler+0x84/0xf0 [ 175.297238][ T4519] el0t_64_sync+0x18c/0x190 [ 175.298114][ T4519] Code: aa1503e0 aa1403e1 9400006c f9400288 (f9497669) [ 175.299615][ T4519] ---[ end trace 0000000000000000 ]--- [ 175.499786][ T4519] Kernel panic - not syncing: Oops: Fatal exception [ 175.501257][ T4519] SMP: stopping secondary CPUs [ 175.502371][ T4519] Kernel Offset: disabled [ 175.503334][ T4519] CPU features: 0x00000,02070084,26017203 [ 175.504553][ T4519] Memory Limit: none [ 175.705490][ T4519] Rebooting in 86400 seconds..