fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff", 0x20024, 0xfffe0}], 0x0, &(0x7f0000076700), 0x1) 07:23:51 executing program 2: syz_mount_image$ocfs2(&(0x7f0000000000), &(0x7f0000000100)='./file0\x00', 0x5000000, 0x3b, &(0x7f0000000200)=[{&(0x7f0000010000)="02020202020202027468697320697320616e206f6366733220766f6c756d650002020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202027468697320697320616e206f6366733220766f6c756d6500020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202027468697320697320616e206f6366733220766f6c756d65000202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202027468697320697320616e206f6366733220766f6c756d65000202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202024f434653563200007f1ef014ffffffff00000000002000000000000000000000000000000000000000000000310000000000000000000000751f1f6300000000751f1f63000000000000000000000000020000000000000000000000000000007f1ef01400000000000000000000000000000000000000000000000000000000b83abdfdac0a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005a00000014000000000000000000751f1f6300000000000000000300000058bf00000700000009000000000000000a000000000000000c0000000e000000020000003748825f0400"/8480, 0x2120}, {&(0x7f0000012120)="00000000000000000000000000000000a92c83a1352f432895326cda257351bf00000000000000000000000000000000000000000000000000010000ade51acc7e0cd8aecea1549d00"/96, 0x60, 0x2140}, {&(0x7f0000012180)="47524f5550303100c00f0020710e00007f1ef0140000000000000000000000000f000000000000000400000000000000db7466b36d0c00000000000000000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f00"/640, 0x280, 0x4000}, {&(0x7f0000012400)="47524f5550303100c00f1001f60000007f1ef0140000000000000000000000000c0000000000000008000000000000000cbc8352f80100000000000000000000ffffff0300"/96, 0x60, 0x8000}, {&(0x7f0000012460)="494e4f44453031007f1ef014ffff010000000000000000000000000000000000380f000000000000ed41030011000000751f1f6300000000751f1f6300000000751f1f63000000000000000000000000090000000000000000000000000000007f1ef01400000000000000000000000000000000000001000000000000000000280ff83ca00400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000380f0000000000000900000000000000100001022e0000000900000000000000100002022e2e00003d42000000000000180f0a026c6f73742b666f756e640000", 0x100, 0x9000}, {&(0x7f0000012560)="494e4f44453031007f1ef014ffff020000000000000000000000000000000000380f000000000000ed41040011000000751f1f6300000000751f1f6300000000751f1f630000000000000000000000000a0000000000000000000000000000007f1ef01400000000000000000000000000000000000001000000000000000000e8a6f417ed1600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000380f0000000000000a00000000000000100001022e0000000a00000000000000100002022e2e00000b0000000000000018000a016261645f626c6f636b7300000c0000000000000020001201676c6f62616c5f696e6f64655f616c6c6f6300000d0000000000000014000801736c6f745f6d61700e00000000000000180009016865617274626561740000000f000000000000001c000d01676c6f62616c5f6269746d6170000000100000000000000018000b016171756f74612e7573657200110000000000000018000c016171756f74612e67726f757012000000000000001c000f026f727068616e5f6469723a303030300013000000000000001c000f026f727068616e5f6469723a3030303100140000000000000020001101657874656e745f616c6c6f633a30303030000000150000000000000020001101657874656e745f616c6c6f633a3030303100000016000000000000001c001001696e6f64655f616c6c6f633a3030303017000000000000001c001001696e6f64655f616c6c6f633a30303031180000000000000018000c016a6f75726e616c3a30303030190000000000000018000c016a6f75726e616c3a303030311a000000000000001c0010016c6f63616c5f616c6c6f633a303030301b000000000000001c0010016c6f63616c5f616c6c6f633a303030311c00000000000000200011017472756e636174655f6c6f673a303030300000001d00000000000000200011017472756e636174655f6c6f673a303030310000001e000000000000001c0010016171756f74612e757365723a303030301f000000000000001c0010016171756f74612e757365723a303030312000000000000000200011016171756f74612e67726f75703a303030300000002100000000000000b80c11016171756f74612e67726f75703a3030303100"/896, 0x380, 0xa000}, {&(0x7f00000128e0)="494e4f44453031007f1ef014ffff0300000000000000000000000000000000000000000000000000a481010011000000751f1f6300000000751f1f6300000000751f1f630000000000000000000000000b0000000000000000000000000000007f1ef0140000000000000000000000000000000000000000000000000000000085ed3c1db603000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f300"/224, 0xe0, 0xb000}, {&(0x7f00000129c0)="494e4f44453031007f1ef014ffff0400000000004400000000000000000000000000110000000000a481010091040000751f1f6300000000751f1f6300000000751f1f630000000000000000000000000c0000000000000000000000000000007f1ef01400000000000000000000000000000000000000000000000000000000cccff09f620200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001a0000001001000044000400f30001000000000000000000f6000000100100000800000000000000", 0xe0, 0xc000}, {&(0x7f0000012aa0)="494e4f44453031007f1ef014ffff0500000000000100000000000000000000000040000000000000a481010011000000751f1f6300000000751f1f6300000000761f1f630000000000000000000000000d0000000000000000000000000000007f1ef01400000000000000000000000000000000000000000000000000000000075330279202000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f30001000000000000000000000000000000010000001842000000000000", 0xe0, 0xd000}, {&(0x7f0000012b80)="494e4f44453031007f1ef014ffff0600000000004000000000000000000000000000100000000000a481010011020000751f1f6300000000751f1f6300000000751f1f630000000000000000000000000e0000000000000000000000000000007f1ef014000000000000000000000000000000000000000000000000000000009a7d2e882505000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f30001000000000000000000000000000000400000001801000000000000", 0xe0, 0xe000}, {&(0x7f0000012c60)="494e4f44453031007f1ef014ffff0700000000000020000000000000000000000000000800000000a481010091040000751f1f6300000000751f1f6300000000751f1f630000000000000000000000000f0000000000000000000000000000007f1ef0140000000000000000000000000000000000000000000000000000000025fea9c2220600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008f11000000200000007e0100f30001000000000000000000710e0000002000000400000000000000", 0xe0, 0xf000}, {&(0x7f0000012d40)="494e4f44453031007f1ef014ffff0800000000000200000000000000000000000060000000000000a481010011100000751f1f6300000000751f1f6300000000761f1f63000000000000000000000000100000000000000000000000000000007f1ef014000000000000000000000000000000000000000000000000000000008f1f0d952103000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f30002000000000000000000000000000000010000001c420000000000000100000001000000344200"/256, 0x100, 0x10000}, {&(0x7f0000012e40)="494e4f44453031007f1ef014ffff0900000000000200000000000000000000000060000000000000a481010011100000751f1f6300000000751f1f6300000000761f1f63000000000000000000000000110000000000000000000000000000007f1ef01400000000000000000000000000000000000000000000000000000000f539bcb01c07000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f300020000000000000000000000000000000100000028420000000000000100000001000000384200"/256, 0x100, 0x11000}, {&(0x7f0000012f40)="494e4f44453031007f1ef014ffff0a0000000000000000000000000000000000380f000000000000ed41020011000000751f1f6300000000751f1f6300000000751f1f63000000000000000000000000120000000000000000000000000000007f1ef0140000000000000000000000000000000000000100000000000000000090aa2dc04d0200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000380f0000000000001200000000000000100001022e0000000a00000000000000280f02022e2e00"/256, 0x100, 0x12000}, {&(0x7f0000013040)="494e4f44453031007f1ef014ffff0b0000000000000000000000000000000000380f000000000000ed41020011000000751f1f6300000000751f1f6300000000751f1f63000000000000000000000000130000000000000000000000000000007f1ef014000000000000000000000000000000000000010000000000000000008ba223c5f20600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000380f0000000000001300000000000000100001022e0000000a00000000000000280f02022e2e00"/256, 0x100, 0x13000}, {&(0x7f0000013140)="494e4f44453031007f1ef014ffff0c00000000000000000000000000000000000000000000000000a481010091040000751f1f6300000000751f1f6300000000751f1f63000000000000000000000000140000000000000000000000000000007f1ef014000000000000000000000000000000000000000000000000000000002b6b221d32010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010400f300"/224, 0xe0, 0x14000}, {&(0x7f0000013220)="494e4f44453031007f1ef014ffff0d00000000000000000000000000000000000000000000000000a481010091040000751f1f6300000000751f1f6300000000751f1f63000000000000000000000000150000000000000000000000000000007f1ef014000000000000000000000000000000000000000000000000000000001a2efe98c1030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010400f300"/224, 0xe0, 0x15000}, {&(0x7f0000013300)="494e4f44453031007f1ef014ffff0e00000000000001000000000000000000000000400000000000a481010091040000751f1f6300000000751f1f6300000000751f1f63000000000000000000000000160000000000000000000000000000007f1ef01400000000000000000000000000000000000000000000000000000000304f318b65040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020000000004000000010400f30001000000000000000000fe030000000400003c42000000000000", 0xe0, 0x16000}, {&(0x7f00000133e0)="494e4f44453031007f1ef014ffff0f00000000000000000000000000000000000000000000000000a481010091040000751f1f6300000000751f1f6300000000751f1f63000000000000000000000000170000000000000000000000000000007f1ef0140000000000000000000000000000000000000000000000000000000039a2374834010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010400f300"/224, 0xe0, 0x17000}, {&(0x7f00000134c0)="494e4f44453031007f1ef014ffff1000000000000008000000000000000000000000000200000000a481010011010000751f1f6300000000751f1f6300000000751f1f63000000000000000000000000180000000000000000000000000000007f1ef0140000000000000000000000000000000000000000000000000000000089fc747cf707000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f30001000000000000000000000000000000000800001802000000000000", 0xe0, 0x18000}, {&(0x7f00000135a0)="494e4f44453031007f1ef014ffff1100000000000008000000000000000000000000000200000000a481010011010000751f1f6300000000751f1f6300000000751f1f63000000000000000000000000190000000000000000000000000000007f1ef0140000000000000000000000000000000000000000000000000000000096f2f575dd03000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f30001000000000000000000000000000000000800001822000000000000", 0xe0, 0x19000}, {&(0x7f0000013680)="494e4f44453031007f1ef014ffff1200000000000000000000000000000000000000000000000000a4810100d1000000751f1f6300000000751f1f6300000000751f1f630000000000000000000000001a0000000000000000000000000000007f1ef014000000000000000000000000000000000000000000000000000000000ea913a3b7030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000300f00"/224, 0xe0, 0x1a000}, {&(0x7f0000013760)="494e4f44453031007f1ef014ffff1300000000000000000000000000000000000000000000000000a4810100d1000000751f1f6300000000751f1f6300000000751f1f630000000000000000000000001b0000000000000000000000000000007f1ef014000000000000000000000000000000000000000000000000000000003feccf2644010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000300f00"/224, 0xe0, 0x1b000}, {&(0x7f0000013840)="494e4f44453031007f1ef014ffff1400000000000000000000000000000000000000000000000000a481010011080000751f1f6300000000751f1f6300000000751f1f630000000000000000000000001c0000000000000000000000000000007f1ef01400000000000000000000000000000000000000000000000000000000fe0c1aafcb0400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e70100"/224, 0xe0, 0x1c000}, {&(0x7f0000013920)="494e4f44453031007f1ef014ffff1500000000000000000000000000000000000000000000000000a481010011080000751f1f6300000000751f1f6300000000751f1f630000000000000000000000001d0000000000000000000000000000007f1ef01400000000000000000000000000000000000000000000000000000000cf49c62a380600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e70100"/224, 0xe0, 0x1d000}, {&(0x7f0000013a00)="494e4f44453031007f1ef014ffff1600000000000100000000000000000000000020000000000000a481010011100000751f1f6300000000751f1f6300000000761f1f630000000000000000000000001e0000000000000000000000000000007f1ef01400000000000000000000000000000000000000000000000000000000f4300ba0d007000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f30001000000000000000000000000000000010000002042000000000000", 0xe0, 0x1e000}, {&(0x7f0000013ae0)="494e4f44453031007f1ef014ffff1700000000000100000000000000000000000020000000000000a481010011100000751f1f6300000000751f1f6300000000761f1f630000000000000000000000001f0000000000000000000000000000007f1ef01400000000000000000000000000000000000000000000000000000000f5bce4d3ed03000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f30001000000000000000000000000000000010000002442000000000000", 0xe0, 0x1f000}, {&(0x7f0000013bc0)="494e4f44453031007f1ef014ffff1800000000000100000000000000000000000020000000000000a481010011100000751f1f6300000000751f1f6300000000761f1f63000000000000000000000000200000000000000000000000000000007f1ef014000000000000000000000000000000000000000000000000000000004834299b3905000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f30001000000000000000000000000000000010000002c42000000000000", 0xe0, 0x20000}, {&(0x7f0000013ca0)="494e4f44453031007f1ef014ffff1900000000000100000000000000000000000020000000000000a481010011100000751f1f6300000000751f1f6300000000761f1f63000000000000000000000000210000000000000000000000000000007f1ef014000000000000000000000000000000000000000000000000000000002a04fdb11b01000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f30001000000000000000000000000000000010000003042000000000000", 0xe0, 0x21000}, {&(0x7f0000013d80)="c03b39980000000400000000000010000000200000000001000000010000000100000000000000000000000000000000a92c83a1352f432895326cda257351bf0000000100"/96, 0x60, 0x218000}, {&(0x7f0000013de0)="c03b39980000000400000000000010000000200000000001000000010000000100000000000000000000000000000000a92c83a1352f432895326cda257351bf0000000100"/96, 0x60, 0x2218000}, {&(0x7f0000013e40)="7024f50c00000000803a0900803a090010270000060000000000000005000000380f000000000000ed41030011000000751f1f6300000000751f1f6300000000751f1f63000000000000000000000000090000000000000000000000000000007f1ef01400000000000000000000000000000000000001000000000000000000d394d8b5740300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000380f0000000000000900000000000000100001022e0000000900000000000000280f02022e2e00"/256, 0x100, 0x421c000}, {&(0x7f0000013f40)="0000000000000000000000000000000000000000000000005f608695f80700000200"/64, 0x40, 0x421cfe0}, {&(0x7f0000013f80)="000000000000000000000000000000000000000000000000b6ad528d050000000300"/64, 0x40, 0x421dfe0}, {&(0x7f0000013fc0)="0000000000000000000000000000000000000000000000009a048ad7060000000400"/64, 0x40, 0x421efe0}, {&(0x7f0000014000)="0000000000000000000000000000000000000000000000001f5df08806000000c024f50c0000000001000000010000000200"/64, 0x40, 0x421ffe0}, {&(0x7f0000014040)="00000000000000000000000000000000000000000000000090aefd31bc000000", 0x20, 0x4220fe0}, {&(0x7f0000014060)="000000000000000000000000000000000000000000000000eeffe33800000000", 0x20, 0x4221fe0}, {&(0x7f0000014080)="c024f50c0000000001000000010000000200"/32, 0x20, 0x4224000}, {&(0x7f00000140a0)="00000000000000000000000000000000000000000000000090aefd31bc000000", 0x20, 0x4224fe0}, {&(0x7f00000140c0)="000000000000000000000000000000000000000000000000eeffe33800000000", 0x20, 0x4225fe0}, {&(0x7f00000140e0)="7124f50c00000000803a0900803a0900102700000600000000000000050000000060000000000000a481010011100000751f1f6300000000751f1f6300000000761f1f63000000000000000000000000100000000000000000000000000000007f1ef014000000000000000000000000000000000000000000000000000000008f1f0d952103000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f30002000000000000000000000000000000010000001c420000000000000100000001000000344200"/256, 0x100, 0x4228000}, {&(0x7f00000141e0)="00000000000000000000000000000000000000000000000093abe5e6030700000200"/64, 0x40, 0x4228fe0}, {&(0x7f0000014220)="000000000000000000000000000000000000000000000000b6ad528d050000000300"/64, 0x40, 0x4229fe0}, {&(0x7f0000014260)="0000000000000000000000000000000000000000000000009a048ad7060000000400"/64, 0x40, 0x422afe0}, {&(0x7f00000142a0)="0000000000000000000000000000000000000000000000001f5df08806000000c124f50c0000000001000000010000000200"/64, 0x40, 0x422bfe0}, {&(0x7f00000142e0)="000000000000000000000000000000000000000000000000bc07256bbf000000", 0x20, 0x422cfe0}, {&(0x7f0000014300)="000000000000000000000000000000000000000000000000eeffe33800000000", 0x20, 0x422dfe0}, {&(0x7f0000014320)="c124f50c0000000001000000010000000200"/32, 0x20, 0x4230000}, {&(0x7f0000014340)="000000000000000000000000000000000000000000000000bc07256bbf000000", 0x20, 0x4230fe0}, {&(0x7f0000014360)="000000000000000000000000000000000000000000000000eeffe33800000000", 0x20, 0x4231fe0}, {&(0x7f0000014380)="0500"/32, 0x20, 0x4234000}, {&(0x7f00000143a0)="00000000000000000000000000000000000000000000000033f428d205000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100"/96, 0x60, 0x4234fe0}, {&(0x7f0000014400)="0000000000000000000000000000000000000000000000007375191502010000", 0x20, 0x4235fe0}, {&(0x7f0000014420)="0500"/32, 0x20, 0x4238000}, {&(0x7f0000014440)="00000000000000000000000000000000000000000000000033f428d205000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100"/96, 0x60, 0x4238fe0}, {&(0x7f00000144a0)="0000000000000000000000000000000000000000000000007375191502010000", 0x20, 0x4239fe0}, {&(0x7f00000144c0)="47524f555030310000010004fe0300007f1ef01400000000000000000000000016000000000000003c420000000000006f711d99fb01000000000000000000000300"/96, 0x60, 0x423c000}, {&(0x7f0000014520)="494e4f44453031007f1ef0140000010000000000000000000000000000000000380f000000000000ed41020001000000761f1f6300000000761f1f6300000000761f1f630000000000000000000000003d4200000000000000000000000000007f1ef01400000000000000000000000000000000000001000000000000000000c995d9cc97070000000000000000000000000000000000003c420000000000000000000000000000000000000000000000000000000000000000000000000000380f0000000000003d42000000000000100001022e0000000900000000000000280f02022e2e00"/256, 0x100, 0x423d000}], 0x0, &(0x7f0000014620), 0x1) 07:23:51 executing program 0: r0 = landlock_create_ruleset(&(0x7f0000000980)={0x1020}, 0x8, 0x0) readv(r0, &(0x7f0000000d40)=[{&(0x7f00000009c0)=""/115, 0x73}], 0x1) 07:23:51 executing program 0: r0 = landlock_create_ruleset(&(0x7f0000000980)={0x1020}, 0x8, 0x0) readv(r0, &(0x7f0000000d40)=[{&(0x7f00000009c0)=""/115, 0x73}], 0x1) [ 1904.237670][ T2933] loop2: detected capacity change from 0 to 163840 [ 1904.239468][ T2936] loop3: detected capacity change from 0 to 2304 [ 1904.250071][ T2933] (syz-executor.2,2933,1):ocfs2_parse_options:1455 ERROR: Invalid heartbeat mount options [ 1904.265909][ T2933] (syz-executor.2,2933,1):ocfs2_fill_super:1173 ERROR: status = -22 [ 1904.273273][ T2936] ntfs: (device loop3): is_boot_sector_ntfs(): Invalid end of sector marker. 07:23:51 executing program 4: mkdir(&(0x7f0000000400)='./file0\x00', 0x0) r0 = openat$fuse(0xffffffffffffff9c, &(0x7f0000002080), 0x42, 0x0) mount$fuse(0x0, &(0x7f00000020c0)='./file0\x00', &(0x7f0000002100), 0x0, &(0x7f0000002140)=ANY=[@ANYBLOB='fd=', @ANYRESHEX=r0, @ANYBLOB=',rootmode=0000000000000000040000,user_id=', @ANYRESDEC=0x0, @ANYBLOB=',group_id=', @ANYRESDEC=0x0]) read$FUSE(r0, &(0x7f00000021c0)={0x2020, 0x0, 0x0}, 0x2020) write$FUSE_INIT(r0, &(0x7f0000004200)={0x50, 0x0, r1}, 0x50) syz_fuse_handle_req(r0, &(0x7f000000a680)="f2dc9578c61994cf938a7621ac049a6d63cea9535d30d26edbb299ce0df1caaa2d572e7e3f138b32748824c179e9069a074599f8c5142a6b07bd3e7ce9f5f5730cc35d00260c16aea6d183cfab504764e7a6b5ca82062a069826c6a0dd415f723d11e7ad580efce4718e67ef24c2b058a5d5bcfac5d10b96cc5f30ae1e55ac6743858264d5e83bfc6251d690a684153599ce666fadd8124bd6e9552ce6803d3ec3db5c49c36aec21a2f8e83c270a34f4c8fc5bc0aa9bb27990d3d7d7377ccaf59431a50d729cfea9a95192edd372dc611197497d92e42c0ba8e55d60e0945344cacf86e4f5a06bb68d15da7bfd091340eb87c66395930dc8528e1898f6c7231cacf11bf35b0b45373e7b7e81c91842216477966f66f43db170e8b5df42312208748d394c7da23b366ab71a87c6f966ac6b768347dcadd2c876f24bc4c7edf7c792e6a5a154fe0f0699296ed5f66e614f06a7e0814bccdf19b69e1b8694673528768065b3347d9a6dc3bbab2390e3e5f3bdd93cba7d7e3180548091c4d18ff32f598f94a9c569c352568e5e577ccc792e58044457d1bfabd4d569106252bf9f7f389f82fde530468d5c79cd4f1b37dc7f371c31fba401f5643a3922e6fad6d063d590d736ed522ce3b1fa0520727a0b5ea72825e3969584266415a676017b3ab22062acff919b6d2b67dd1fce30af908a95fe9d221b0a7c06b8b51bd7de1748f3f446df7edbbe1df499cb1fb7bffabf9e3382923ec67e5b7fa8d2cf40553e26ec112272858e08919d5ae4e40a88adb207de714a1631a748c028c867db0553938680904875597c15094be7c7f2537efb0581217b9485a6538cfa10afd888a822532c9c1fa69adf9c73a42cbfc88b2fd499f61fd3c2e306ec76205d8ab8155b8e124aec587bcd09b1a60978410baed82afa74f28859bdf0d4ca0f950b474d723f85f1b6056b63e86d52a65838bcb29a238725ed6a05041037dfb32319ab917aa91a911fca8a0aa0e567f3a12947a8ab2f7639928b9d0868e8f842e1a923751fe24fe42a8dfbccd291e6773aa64cfa17b1d38087d259d8a4e64314bc0a054e6eed5466f247618d082b1effa1f242e2120c11f04f068a198d38adc770a356338af053cfd99005dbc42804d13bc0a2b2329f37845a9f056aba133a82b844c59fdbf17cd765563fb79d5ed6d5034365e519947f0d47f3dd0867446898637fbdba769ba8f69d15d79fcadd9207789179f0cbca87cac20c859bd8910c5b590b02f9ad384827306c51651e3d562d3ae450b27b07f989ce333429a0d12898553c08f8a5a0bde11a93dd58ccf66ef37d6b02b5afc1462dd1375037420123f0c1dfcc23e8c29a078ba09e829e7efa9a5e47a98f776d67f4cdd948083b213ae88565fbd69cda8806cd3b5006cbba3f87a13925f0ee4d3b5428825fba78a6664f889df80c9997ea730385b88a1f3142bce20c253c2bed257097eeeb63836c65582187ec19b376e1a2c786f4dc4571e9a8cd9015d13fe8987cf5bc269a5fea8c1a77b1c11dede4c09a315a31a0d7e67a17a28675742f66867b7588714a33a4168bf1da227c2d0c88c6edc5cf9c265bdd34b71b3fb87a14ce2a89dbdc56fa4a8664d6b9e7b717b8dcaa3d489a8d2c75ebf03f6493afabb516ba71479ef8aedf651f9515eaa44601888ad2438db03eaa1c0f5f479087f3aa22df5dae1984ab59f17ea356f4abd802eee24c78d230d3b5a54faf896bfcf881b9badb4e84a56f159e5725165c041d89b8534c48a751bae12bb2299013d301964e7b8f27f941db96c9d592e886972f733ff15994e54727ca4cbf884450933020bdd8dd0889c8c1ffe566d58d9e9fe6467f453b21f88c49eb6007816830974829b0732d648e5dc53eb4cb51f10634b48fcdc20af089f92c4662c6c0c4abd9cfc165476d8a33d5861bfa3722a7d4e36283cc79c2d715797651a3b77d34bd34893ffcd8cc78df5dd4d4234ed70e4fc9a8cee4a7bb8eb7a07eff1cc225786c19564e3d374943b254a166f8a43504036fa0288c7b10b1ff3b5684b46863fafa0338c50fcf7daf4cf5f5a742808f1d0207229ba0bff4344ee4613d606a101c47c07560cdb0efd213aac2e010fe5bb183193541a8ea262cb3a3e2c543d93c76c9d80c1713868681724822e27a80ef3289b874be77680f6c7fc6384a8a4740959e365976a01029a9cb27484aba0e9f55683856ca2848797c8b2846bc9a43ad7f1d150d4d3b4c1e832a34ad83d3e56d7c3fcc71d02f7daf7e6b5a1704c5550577e1f482efe3f5446aaa019f9396ea63b9d14570ba3468cc25145307c9d7dd4447e400d087f46467ae3a98e6dcaac53f6a4d71ab6ae1c45ec15424cebe7cf1dfecdf8fb2404bda64e229178b0b199474e79659fe16e96e927be38a3a1b7d9a2aaa7933d627a3010482fc32e06d10a6438577280fc08bfd954d4c7251d3dbf99bced67c1cf1c6299bd08b492ee8a23723f7d45e78520a0bf889603f20add15063ef612ece4bfc1a31c425628248e4d8ee261a0fda95a1e5ca1432b0f23ff2dac77fb97c62969ed41728f02a1f2ac92d9d344076384758ed89fbda9fdded9a6a980a5161b90f840397fd21fa3de514bf5a09843a9fc5a08895c6d5e416d836fc76804f4163c04cbea5a9bf46f1e1da583e8c0e1168c1e13c8a2ab1d1ccec531e2fb44c01652d92127156eed652ec30ad6be2e7ca4650cd3085603a848447e32b2e7001959a5bde0e28ed1e1962838acde3e521931e7f0355caeddb565dedd2da5920c0661a645e56f9c5506aa53552a042ff8ddcb6a3a166d819fc728483258eda01ba00680c99587574aa20467421b208ea987e4a009981b752710a484babc7b090112aadb589534eabde01a518520655665e02575ac70ccc31007ce737b148d3e92a52d4ea651f951609275734bf82f8c987db1803559209660c52678094d94ae4f4b6d706f847c09ca69c7fedecf51c1b2386a362faaa2f4ba004bf80be503523e29152b24c2709070ef8c79059252eff39c300da295b2a246ff8907b281aedddc2688709d20ae65551f91c86fbf37398eca2cb8d760b8ffc7f3592ed30dd2c88f8f518819cecb4b094e808572d50a76d3d7365cad98e8c9348361e28d98f44c5daa382017548bf75ef7be9f4d836932a6530204fcd2b7b0e1958347c1396e827ff5e63ab07081413b2e34e2e4964f82772656b49d0f81ac99879dec266019fe7794abf95dafd63e069fc1662df1fae47e90f4196241bcf3235181d23b37cb0ce9a352afa5ccc8fc863e1e9f7ddf5cd4b123a1360e7fa6ce1885afa332e5b50ce46a3cdde2cf16395af3b3b0ab8b8d01e436d08e112f1d121dbc64a503e50e47d4af2d29f7c2c6f55ad224da459ad765033bc26f398173c3bb80137ba6a21a5e87c9c5a9eaf41831b4f8f225aa9c64f2e54fab0e0f75b06c0f42fe7b6f193fdc5f9a6b24f910d08b1f6bd1aa6ac8ae7b0c397bbb80931b28995aac03e53a3d1f7afa034b1887e374cda3917f880171b53d64364633eff727147bb673d1208eae02bcb5eb2623e826ae46c4464297e79d0f146ae31dc8d684e97362a325a77d4fabc0dc14a58f9e538e3fbfc689049e7c07b98c9c2eba5eb3e37c7eae83c38406eae03749fec1de11f9dda4e6fc3f57b3daa50d8cb6135e58b3be8640e85b7f6874c7a46acb95d6f1702cfcf1ce53646e94c90a36660e343d59ff886e6d16848e149f0239135609caf2381df9c5693b7437fa14c9aab495d70d1945affec2d97a0a207a78b122e2d45631036f73c63ea2cc3959faf31b8a7906db710b733f3ab44e42b01a928b8f7ad5d741cd4ab0daf214c9c08acfac158a9b6b63ed9f6e2aec941154a08e01338c1825c3b1a6482a30bbbaf7b5d0db3a3a7446bb540136ef5ddbc5e4d376e2455c46b6342633086a0d683f659d5bef13a019f76597441560671c50ac74a1d903dfd37a08e578201e5116e22d79ad8e58d2e6f0123d5f8d50fc264fd993f0aab1adbb920bbc31ed062a59fce5341cb682cfa78d1576106ab1c7a9b0efcdfd47548986f8a17ae737ede69ecb7c417a4d3270890e191351d841ebf330b267e63c4c4add2b55a66067fb032f18a8647ad0493d2c841a4921807625178a99ca9663b11c051bb0fb6a05d4365538d3131d09174cca1954d57cca8c1c8700312efb2ed0c139af9dad373a7c45b24908bf9141f3c85d86a1605cc035b98866d32e1866808e21f1c4ff0c3b917a63b0a6a1fa8154e2a9f91cef23667c55e07629d49d86d3f459274e549f3521a34f62e4c9a7d3546eae2c7a230bfba1d06ff2906c90880c2d17cd01ad2a8f7dee1fb54f994b1a2d360190f31676787f9a4ed1329e505c961d73e7c1c6296215ececb09b08d71fe81b57f4dd21067bc3680e07f7c0ec0493fd86c3cc4e0ce99bc712547799a76ae011c118a0c0a038d49227f04459957fdce11244f03fb75bc9d979e46ee5e36652a73658e2430ac16b0688794440da15074fdde4cc64ca9b6c912eeeb41c424216222ecf59611856f79289c99767dc273f7d4afe46aed4f538e9231b9e55bdfd57f427437a9fe5453441beedbd30a9b61bae7ce36dae79a260247c51d0ed5e92df31b114c62b201f9b1530926362eb447c57fe346213ca9471ff851b3a78274d91667fd8a2142be1027c641a650983685e241ab3b7058e6fd9313e9aef348df5389a3e5b5919c2fe31242649e5fb4442d00e114bcb776d21cc70c13e3f0e6445300d0fc934087c5d9858e556bdf3384cad33fa7b94f7287c13178d7e7f1411888945d69aa3afb805cf13f720a59e7bc4e48da029eb97b0b276342f88ec6a997f13cd8bd3f2abd1c317fbc6701ec8e2c89a7f6db91899c020478b714a40fe01b9e30487326e435d6c0643c90cc542e7ce93907f513fe27f217a597adba58aa89e8f25b9874923ca2a9b99512e1ebd7e5661d2c460709713ff9e55d22512c4bb4380a2023e0f62ba2265df7023ec7e98b52bc7a9a20030210445e04e03a5706bf28136615319deee46b0f8ffc63a2596f81edb161d85d95ea826b4c56cda064b7730bbbabc1413c5c41951a811b9079b0e736a8bf34a65456468a4d4dcfbe07ca92579f72e2afeede987bcf6fb02cc85383989344e1dd34dae00d7bbda1055c69cbb4b60649ea0f2da4c731a1deb1fac2db5a102d837de2f35f3eec936c9f0b8a90ae62ea3306200204cc51552174cc72f9c97b55d9a1c1de7a004ac5178f5d8dae3f2643aea2f0593885593790b2d02a5b779c853807b3cf933189840a67cbdc7e064a92021d01b43c39259bf253b0a757fa16aa9b7007f9404058dc013f213c10d983bb6b37b688f0616df2675ece9c2936e800e92d9fe26c384be24303ec0bee74a870313288728a6cfa9d57b8197ab7fdc34b7f1eed4173fe4048e2bf822fefc461e80ad6b2e82f9e5a2829d83bc5715adaf186a9db625f895b378ff17aa7a40247f521e7a74e079a947384fe724f8f123ae6941f5935fd90cd821733a1a26aeb951d66239b4401a64f220d3a3ce24c0c60f177a2d10dc1b8b0e09426904d4b7e3fc6be1facc605a2a38af320e3388b71c21ea1aad83dca11df344507b91f73c9c50f9660679b640955b6a54b132861ede6e0932129b18bb15c4028d1cb58beb8e047c0348710c0d2a494ddf22419255808e84b7d2929177e31b4629ceba2e430b755d5598d3979fda859c8906cabe406b415440839ba01a7751101487a6dcc72a90f521f036046a9c91837727fd544f66abc6e58259f18211ab4f60141026d129638ddbbc197fa08102134b9a5e84d1b0b68f27b15abce8cc1ab54758c74cf927ebae8b24c02c0568b99ff797dcd641f9d68f824f8ebac0c7bceca8bbd9b63f6276c848203c4448c8d302570a2238f1b4c6e7bfc0e1eaf4efc1dc271f1afee07b72232b3ff13a3db39cc700ed77783f43e746c1375f35152ef7349faeb76902ae4a5cd8f8871b89a8090600e5b3cb7060ea6ecca3a47a8dfc6f7bc02b4dedd17f430caa24ece79bc523af12394a6b3cfe663c4a227e64fad651033e97cb5c787433cee6c802ef569d453292e0ee46c5f8590f796380739c4c3bfe9261e1aeb0a4a63b73461723f5adf06c3d172d6e469f7e21706ef9691d02ed380024efedb8e896cda700c62d93dbd0c08a7a899fc84bc32a9e5b502d853e5126156f6b5c1d1d776a0a803050d3b7e29092311b5aab80067e78894b93a0c39cf9ceb846c410d8fce9b80968258a7aad287e30575992741a78a71c477c284d56ff0a7a092e7f00357442ee53dbd097626f5fe37630ac8f93ecc0e165e9dfe13c9beebb57c7acbe9605c13617d8de5c57371bb4a7a89cb1178c426c48501851d97c302b0c5284d2474ca880e3cedf802d431f8e501eb3d096bd39baf0f86299de7608170e025f395a48371692d88f3385831172107270aa6e4e7c7aa4b3fd59d195be24d82ad316e1bf15e319c118f7a680bfd4e7f08d1eade84e1e6ed239b9a07d78e2a318ec5b0b7169e17af6935640cc5a41b7357e477d5e9039924e10bf21fa8f44a8dc9b4da928b361f2e0080adada3ce02dabc76e61b7eda6205ad824c80718390de2754c85287ebe8da62042570411cc1c863abc9fd26c120aea4725ca0d3c9e673872f5f1f634c08bf80d3a60a28958feeaef259f5d35ad9b3c97eb4ca9b817207f68883e1f01810d6b5289813423bb81a9b1833e18454fe0e8a08b490fe2f57ad71b13796fbc8eb09128fb6420866253fe075bba071d8a6bd8aea15c44623a8d309a3603c1fd2ae52ebc0f60ef538f9f4d4646701b8f964ba80776681531c8eb1320b2f73746f3863e5c066fe27b61f0589bbd85be52ca6da7cd886366bc0dc2b97fd02b581d2af5faa76d58c2b6c35de007528755a3e85665dce4698f54259e3fb9a2066416a328f8db55f1b4db7d8b6ed4f45d128c33d58f2c34096d4c1e8ede406d99d50e04ca25f8c881051e35975471f36df5876827aaa91d7a572901a9d57ec18a36e3324f9ec617e64487c62e3f744610805184fe11265e608601e4a51bf8569f99ed660e6ee48a7beeead371dbff6f06b6a84d14be3eef834fec6a8fa272ae6ce621ad757b534da3b7404a4f0d4b258c207bf3fad8ee8fea7e9a9f80d2fe4cc00ce561663c700100ac37d87b39c02e12c4b35314b51ff89b5f9abb474bfbdc4c4151a77f2a046ebd73d9d97177c4484f49a39f53ae902582a00d87b4752ae30a3e3f46893d37eacb82f50c1c769a068d55030e23689475d360e9b4c5bd19619ace6c46b0e5a952778b0174a816da17f082decb571652bcfbafe9b3a86e85c6a36305a5f4fe86c2c4b942240f1bfcfe45e7e36ce703dfa94609e7c14e83af8d74d7e6f26ebb00f9d9d4a8e047181cec102a707580505de81275892092c97d1d6ed3e24464f61bf1289d663f807c8a5a0e8d401db0d693ac818417f8c5e7188497856535e344f085e3a51c08f0ba6f0280d9082c87cc911d4ae045a772b2034d2bb0e107ebf8134f2273c7997a6ff89da9f5aa809dfe27ccbac8c35847d3c1fe4d1445c0ce774e912cbf1b2c54f8cf39f4819142901fa54d6e906944a08c8b3da7fbc854208c9a045619026175cbc0e4ea27c8ab2f37de842f2dbd824ca6ac9dc87a8ff83cef67f55536e079021bf3998d2a64b7feb86c0167b943ec87d8c9d15f377664f9b32cc29f7701da0c342c1b75063d635db276fa3970b704ed7eec18465302e9578e61386bfcdd45a155d636d328b04d684baf6a792e0a471ff0ba234036cd997e6bb64f9cfdf3148f67bdda3ffb07c7d3812a156e74abf50dd0da243f0c920a33b9af24a1afc9bf4d47ea868a1efd9cd09c527aed1ca6b5de6f8be949641b47cb5de48761c2b673d6f6f823cd7d35ef19124673d534586ca572c69837876ba8ff8288a3aba59c35344732c8a4e5516a7f0d56d1e119299aded7a73c20162f16bde35d5904aedaa851fbb2176e23efb33d0f0c8472e0a89334740890e1cf892ee79f48ef30670628bc0cd4bf528bdda4ad5cd7f354fff227b50df83fdaded1d3d1f31719853182c5545c21091b02c6da0399d8bf62acfec65f37172649b45cb6a0859d427d3e7cc37b8785797d59613641fbf434a945b1a2f2cac771054f7f6133119e26e57a92a25dfa18aaa62ef224bfc128b1ef86a19b73153e614d35910cc65a53eecea098bb00fadf200c2279790e1352f53e99711832fcc56f5e71116c47d1862c4f85fcedcdfb5b9c03c9e9ab981935f70cfaf3493d541456f7bfc1aad535037f113b63e8e93fccc51577952c8f932f1a37c39e622c4cdbca5e1a1b44bf7f834a76fd121a553dda38152842b6d34f0098494a565d6a6538ddc85f3bdbab505e3ef83a8a23033d01a2868c50272d0f5c03a7f3bf5e0c8e0b11d3a84cac2bfbfdf4b2602c47208437ecb16c2161e3874085b9fe863341ef99c8f4d366f766ad9e2ec8750e7482201bf14e125f7bfe7f19cc602ac0b96a28255df40d41ae15b9f1596b99cec3bee65444ab69f76e299f1305d039672a8b17cb67e22c93fbd7ec83b828f150bdcf9f20a3777a98eebf3d449d6f75a58629fd1315830f0bd0f77f5bcef20bef126e1923a8880ebe89a7f74c0f5a49dd1cee881eabd2d16368075e58d2f4f00f72b0fb2e44420f87a53c0f4a71e3bd3061c9b3540bd1a781c8d63eb7d0c9f172ebaa06d355e94ba6fbd101ea60571db2f079d12723ac30600e14c7d6626affbe3d445289065b0e3e54ede1d4236350a73fa5c9c53929f2354fa9a5a307a94438f3a54f46b0073502bba972cdef1ddbfafb1ed7c05802e082df4530e0453494a6e83f0406f7fce48693f66332111f711842e88ab10dc0d731370b376e4a2376537cc63ee787d9c1b1ff0aedbd46595dc183c1b7263f237d3dc96140b8a84762fecb76ac20d66ab9069795b09bf66527b7bff4e6c57a67c43139745c7fc1dbec49211daf66906ef4355dccfba3f504b3bed1ed259a28f7f77fe19b361e3189ecfc2b06f732c4dac4f6233920004859968b8297ff5c7b79e30c4dff8ffe19228c78416c98e3502e4b209fec3933f67a3b09b5d87f6631c70aa7fecd673e39f6540b80ebd56d2afd95dc08174abed36d6e48fb8168b980b61ca91389f150e56ec749806f729edaa0cf1ec4d2d8cfeacb47a655407109a4ca2279b23b3ccd44dc2fe64028f90fd58045a7562e55d9299f8ae2014d67d1cf4728c021f444a22a4b99a41b7fea3d479a20fe6e46674b064de2c45ffac150bb20167dddeaf8e26fa675a4e207f993d7ab44df1150b1c66296cda640ab107525b9c1a06d4523df546b739c49e010e8138cb7402fb88e28effc9c95b34932fd5a9db0a25b07be551f9ed3776dc8317a3582ef659980ae4bee6ae1177742d25f14f16ec0ce0fcce83939ba545b21b892d3e612d1cb8b442d5d9ed802923e7fbe766f2a1c280f37f82602595d77cf0c17fe3085844fe609768883c360ea090a71300c50fde366702da3c37ce109e6bfad0b804db1d512d47334a29f390343b37e60823297f4f39ab989dc3e23406c13c6f2f0611e5ac4259d24629f106011402cbc05e043bc1df4c844295db83663d67e3cdd857dae13d878058af2d949e535236739cf609813f96ee44a76d6699f417167e032d21750b8d7f04b9160c3b9c851a6c82e24245230f6faf73db5d544a208620a3065a6d07744fec573b674d4911eb8facdfe4b6716d85c5640196bf230bac72c5fafad38b4f4ae7d50573924ee60ada2c0b8d6da3956835169bc8e2373b8c9ddf806567e9bb35d60e16a4931f722fa98175c46280b15f939d7f92041a5102d7a9487e913a33d0ce9b13b3aad59351ff5b0671f85f43b00757ffe77d14bcf4c04f284271366b8774a5eff78f9432b26fe9c9bb16510ed95b12ad0a5ac37039cbba2c2742e278123b4e5e40bbfd2459dfd986febc2025f93786e1ffc458e7b2a41e1f86b06dcc825a26249399f1d673459869907af74bdd6dcd48338bc841fd42648844370d3d42a3bf0dc16daa8f63b8a69f50d442e0db42031e189ccc9add1ec7f74427a2b5a8675e93f033d26715f9ada6269fb72a19098799f366f01e8b8d9e92c34b2a22d164f2aa0142d42ebeaedaa2d9aa61b249b1422326f32b8c60bf281d21988909bed50f7ba679e9899629b7e654b8a5df01ec0fd3b4a5a2a1aafb1d84714d450eb0285df9b42534f0fbdde1cff9f9768c2cbd0512f037c279ec7ff5b49f7cdc1e2a5f18cf7414a3050c0bad5c083e40baff231aeaa21219c170149c0581705927e8c6dc3bd1f256aad62c6c7cac1bc165d838d026db317d7c0861381e845f5388ae356e9482906b6ce778b3fc55eeb24809b92836c3ff94c28e7721b6bbbdc12a9606615e7c6fc3af4a206be3d87ee2a5da0685f41483aa1abe6aca8b4b922e14260433091f2d9f975b3c2302b9237327f73d43e1f92e9bb635ed51878863263882c8361b3846b926922884a81303e2196779d25843f65aeaadc1dbfb18e538e1b603c74f5fc37846f9e3a16a6344a7f9b931b06cd0f09a70aa3a2f12535c2df5cc59287720feb78d3056db023ae3bacad4142af3b8d831e163c0d8dca28449c17401c379a43f1dcc53188b82224211455341fae1b2ab4f2fa3ec8b13c4f2fa75900e39be7ec184496af2896168ea0ee74e9233744c84d0b1c4ce7b6368a917e3a3049006355611964c602d37a0f66e8c5a3abdaea91fc6573146317740ddcc0ccc9a86a8b46bb83fe0fc7a044c9326baf7f5e12965c6b011a803fa98f0c8486bb8274cace633ce7815513c795caab227f0f6821e62d77beb040efbcd56e1017fae03a54f1069a70088b669f7b0c8df204025bc268794c6ee85bea354602cd05ac51323b921e0ec2c5d5665c0dbe59206fa506017c5a1a0a258af6957e155b10b8646fe53f21cde101d421acfe89f4e65058c2fc6bf2b368d07ef8f3d63b18704379372b625e96cd0cc7e8b7b36ac1aab4cd01a62bca05b9c35e6585bd2dfcc6ad2fc62a0e1ee6421632f448876faafad10d2e1197ffb9475dc3e36634f6de485737a4f39863dbb922ab14e71180725f402cd63a9d5aa6bb59c596bda93a835ae47595dd7994b32df18a25ace7dc14d2633b46162e4855d0eeab629e781f8aee820d02db24f41f72d8eb16532b675279bf4665dbb4068c33ae4fcc9ef76b1986570f9afaa5525d60fad92851c83119ec3aa450a07ae8dd86aafd2d7d4db8947c2c61b2b421b9b17700843296de0acbeff6eeb1857c3410e8bc4b89288c39409062df18ea4f9bfcf3b598d9dbade69b8d743090e346f2b629737af6a9e78fca2307e6d06011f02219078b4b16b397b97bfe5ed963a0685ace416c5612de699f1c2a50602cbce8c91f60cdf20886d253bf95f9e558b1801ed1cae9385208bb1dd6978e4e70b0d38d3c6563ffe0e40f2f22d46e87c12b22a7cd95f7ec9daf33a4a3739550e5e8b8855bae53f45f7ee589b2f24d8679796170cb7288395e42fe6c36fdeef3aa8d12571a0676c379ed200", 0x2000, &(0x7f0000000880)={0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, &(0x7f0000000580)={0x90}, 0x0, 0x0, 0x0, 0x0}) mkdir(&(0x7f0000000000)='./file0/../file0/file0\x00', 0x0) syz_fuse_handle_req(r0, &(0x7f0000004280)="b936b4f16ee763f4059aee2fdb5a611d772b6ca56d1b682def8868e738e366b3dd31e77c3f1dcd68f992fbbffe08c6f7a73f5ad6a628b7e0ae8d394fcfa2c9d8d7c9f9a984436a9c8e4352aef9043eb3dc0305333952b6294f017c27128d53aaa584307ccd72cf441276bbfa2a7b371ea257145040cdfe1cafba2f5c03a4ff75b97f377a2cd0c4101a6ad7ae3401866cd97ff78a494bf6f1f144c71f71de83bb7551f1224670694ac03ec30444c1e75a44cb6002263ad2e783522d62044131d2ba7969060ca9b2708c3ac9eeac6d58afce6b544476e9dd3aaabe36a94004bf5ed6ff1b3ee145b971abcd1192dbab3bbb319e8e0680c9bab76e7f8aa8c0f2944e918cfc260020669f20159c113d09d38d90d9087f7ae98d37b9348cf5b8541578715847b6a233d0e8cb12f2cf01d2f8290885ab88f6fd9c72838ac112e63daf77c403447b03329b1f120e910b7b2de6144fc3ae906f5db93669c8c741af3ac4f71e2f952277e59b2b57700197fcdb38116b1aac162b5a50390718b4a4975fa27505915c82ded9afa4ba2f7b0571df5e234f6785f6a5c4f4260b25ee6008588958fa626861703cbf055b1fc3b767ec39b6b2b9e73a53510f753e459a59568fe5013d43dd81f6f3a062eec2e43cdad3e7225d9da12a149df37b2d137b5d85a0c86feb46ff6343ca1133e119b94f080f5127bbb073f8e84667302acacd7cb4ec6e46daebce766f3bb1d61e70cc45ea0c2815c4004432bc57ba12dc563f8488d3f9864b9ab15fdbbdae34f7357e91f5445b01acb2df8e20b10189b232d65cd2a2e6e52d6c4d3924663b83d4ed226cc4ff9a6b41650bd5eff2020c8f72c9549ebacd9f4b03b51d77d252bfd158f7a39c11583b238ad4023ee0128ab3c0583a7b638e15435397eb34f9c24acb03d8b3ad5e5749b45f6803ab96b95d32f37e4aa83bb735ec49110a3a106182695ed4e865470b655b0095a2b427650f07d847d544bb96de3be335b4ac229521ecfa3fc4d58dad885952931e4ff50f4f1d1d1ee8e1da49a0a19518cdfbd9ae0de604c1af5f0b0ca2efe3d148af3abb0278a8382a2d8ccbc678add3b9685291286feece123d9b47b3113aeef4b0422235284bd2d1861bdfe38f2d0750db6ec7474ca545ecf2e182c7f29fdf2749b9f759f32edebf96b4a33100c8f1c1d4d922ad56c4c4b1070e5d1884bb72ce03df1daa025e96e35f594d2bf73d8b0cf5559223212b83065e71475d7954833006050a0cf35d4eb0f7b189c9936a4177360fc8de9da68f5a0d748c979beedb8ee9d16b46d48c16bef05dd51b4df9db6c3546b5cc6bc3fff9788f4f07f99bd98068f347cb4a31a08323293e2994f0220d875052bd80086f44b07ccc02f9e8f9610ffd5b9d3aa19ed6247702b21ab6d472f8fe99c97f98238fc73ffe9908278bbe92efffb933d565c907e8640604584442846e3f17223b5f9f1766437d7f60e7260a78c8cf6d094825a1229d84f6efbce4e751a511f70d88ada46e3e3c8130571ceecee9f45ac802cb8cba506e0ef10322f25aecd972ac7de6cfe7db5fe274c0da083c0a4d772440789e765438045231e209b5b53b1acea480f0876e112c3c6f4863b0676e7a60b00cd957f893f82ab35fedb539024272ee43f552b3357c73f9612838987b10730262fcf359ba03e827fff425544034f7f9dabd8bc8168058ceca5e3852443e35179db4452e9b0bafb85153bab2182342d43d947b6562b469f360ee9ada067ed843eba73f920f5590d42e5bd24727a012544c347cc0b71182b98008b25ccbbdfde3cccb7f75eae21931c5cff372691807beca11124ebf069afaf969ea7e46ef6a10a45aae457f60b5149449a099b4c9adce1db24eabf7d7890e0bd9f7a1c22e15f56a87ed0fe0d299fe52f59cdcd0f91b7762d7985c4051df3ab25cad5d6582abd7ab739aae540db52d292d9964793b46367d14e6296672f346e2252beadd87ed9f2b9ccf6bfd3f338d4bb62bf7b413c04ca2ed5c1eeb32d752fc19e50e2c30203184f79984b4fd6d35ce3b4ae5ef3fd4250a705a0cdd7576b62bdf11cf579fcada58330bb6c0530c65c41ff05c7370c23b760ffba3a7ef8fdfbf575dc7a67571f3cbee1e45f8cdf5e02a70b67978ad0d33505f33d62efe301ebe00c7181bb3b6d145a90a970db0edeeeec7be7ec88ebcf75b5b1a866f86bc9a99b916bebd9ab88be1f3503ce3b029a78249bca8fe4f5faec12127b03e675a172492a53dd4556884f394b501c5adabfc060a73c1205a52a5bda9868617075e589042f4560fa55ee57f4a3b9f60989622be219cc57fa0e24bee12b6182db5f5dc38a1f569d283836bd8a0b26b1f562ed72e33ca3de2ea109b4499da0cec2e964f7b1aa020517c168bd85d3ecb2cdc36fa445706be81d9ae07006bd3f86728be483d0a45975c147f4dc480c5921130a659bfe0954dea25434bcbe0a11ce3fcc354c874875ed6d421ce14cd078e9cd1a3eecc74915f091863b5e91ea253c16cc7570962093289ebaf6f2f44b8edd917253012e455074c12ad908fd0722017667eb74c271903bdfda65aaba18ab6921e3e0eed546c2ee2006ef6205d59b2f04da48a951d24c326d7924a5500b33706cf3c8972f6d9ccdee7a9b4b96f556c1347662c05b8663e7f1e3d1e703c1f71693138242783b55e6e176328f69299faa5fa93908ba99fe3b4e9b186a59c573579e3ca8926d93ba9337f51a01e274ba942a9643ab126d58c6bf7e07a2332a8bbde862ce94517f670196df4786270ba7e1c0c17e957f2b46b402cb0597a9b1928051d56e875d76fbed3a34afc62aaa92c050577897eebca73d4d8c56ee79a4b9f5b178a0e0af46b3c729620c4bc70ebf2c173249f08b182be902a4ae8ad82a356512fa195925447f8715e11bae08a51966350ce501024b3aca616ed05c49a87327423cb42d73d838d747f381c69a74531a521fdfd664b1c13a353f43ae43ea2527fe62dcefa4c979c70340ae3a989d6e23537edfb893a0ef58094b8ef5dc306631c003655f3c3362fcd3b15997a8bc38ef726cbd2de3d4273f827a3451c46ce7cabcea216d948529e32149873a7cd4d969dd3faee1bcb170ffe9b034535d4281156eea56a4424e8f6e6be9d9e24a9b9bfc23cdebd2c3a6d0615785374c39d101b17b32ed60af3b7330c23779e6b31b347ddfafa8e896a414141560f229d1416c88234dda6bd4828ac5de5730a07c2a737cdf2670528aa15bdb98822f922fa3c18cff86d68f60e6f04973f314b54807b0a7e1077df9fd8eca40cf0acd53aa61d63c709a98d31a5719ed2e962b8e666b76a2f377794b65f9b5a61964e4de97135e1034910ca72f7ab262b0709dd58869264be463d3730037e20881fa33a276277b0f95b6800dfde415a082d2547c0d0e31eca9bb7827d0dc6f32c7396c13a044156ad3635b8274a6b2473661dc3a375f9bfc94f583834fd0b7875c55eed735b045365da5d6de4f598f5f7a84fbcb58b413c58bd1aab22aa63671424dd0ddb431a22f0fb600541e298db1d79a14a065c98b516ab43ba7faad66c1dbea91d3bc3672d2ba7842068c51374c093f72d49e8bd5872e76e8ecd92d494a43e60963caf7d85befadcac1c1f1b2f2aad00846adc795925e7e1c55bab79b0304799ace66ea88127d4f8edb70e96bf4757ed0e80e4d222683f932779fb1846769858495331051382b9468289219b0df1825a0abed563f75527e8187bf4b53c5076f0b660fbdce49460dcd08b78fcf07f99d984c478f9da01c7ab7824928be871f633e9e24702574196dd8fbf009a3b726590ff688036e777aa339b04445e0f7868a0020245c879a6f71d5284cb9a7bac80a808764a3d398a53d5e7a7f2ea1889af97ad7fbbee5e3c8f130e6e59da30a32abe57999ed21149bcce3e4383559003c1bfbe91d5d84384b8c11d02d1480980b63150ea885a05012695a0ec7fd5120fc4d92d0272fa14461851b3b3b588bb5342dc843ff56f40c29cb709e68a2530a77e22c4217af7900c53bdecb812df85d3a7e605de9ab6867c21638257f850d816567a8a2397ad555745e55070a2a8762ceaa25f0cfa69d205e9bf6f2c9edf5495137b7d04faee33efc390df26ebf94c7b82c14437dc055bf40b407ca9781c08e02c6f142ae2dbc1e4aa55dd1e96315ed1d3ae194f99b2328fb92b94ee5b5afcd1c0b37a709e613a308774a692af6a8a178145f98895aa86c0e42e4e5603ec229b50bbd06aedfa3695f253b4c6e94df246aef7577e63dab8f9f411901b354c07a439ebf85cdbf57f477e75f589afa7c9f7208462338a95a292ddf0f61b0e4abecfdea3a4acefdbc0df5e937a958474ccba5f818eb843ae52d161c3745d171c9ce0304fb7c85a18603b23a1f9eb7f6643aa48c82820b92f0d3c500e3d968f7ffc437dc521c946c7e12d0041cb476a6c116c0e84c473e0ef1f3dc5d4b2e245374db58c80de0f8a8027cde295dc8f47cd0a029697e5597e53131ad188ec8ba09b2994152fa7b2e05d2d30edf9f78a40376360ce3bf0f8fd04430077d2ced937dca8f62a1d024b54ac34ecd63bb4b689684c7f2bcb7150d496b66119a0f09b47ebba000737a6f465793ee79cb4bac652f36bbc75d4804964c8fcfd406b774751d1bfe87998d99f80bb1c4ed783d190b670bf6c3539547893c26c2a7b1a793ae8be1f31982287a8fc033b99b03075c1b589f73f78e61aeee9296613b4453b6c809dfe7c520d014aa7a1ebe2e46f31cd3847bfc79e88e9569a6b611c0962e57c401069046a0659fef9fdb4c6fe6e110edf99ffb275ceafa9234bc807c3a02e4b1c7d7cd5453b86376df436378e7887676b008a8f9110c0d37fca42c484eb7c66b4787588245ab95f510f6067d7bd41ff6a256fd17b1a0e426966d94f937050efdb184ebadb595e87a5535b89e5c7437181ae089298892afcb527b21eab46685395defe5ffba8cf6b3e08857af2f9c6db9494673dc14c6f82fac16e4a27185d32e25bd4982c89ff622425aca6531e8a0d78afa3939793e77352b34bd5796b722debb341801fb0a9f3dacdf3f49f21ac28a472d6a17691ab1c5382c41fc8fe8679add82547fa485108e920be5866690b24ba73e4ac73aa8b64245f9be0f4748a671a3fecf9b297e5c44b19b3e092ffec942409078a89cc3ae4939b8f91b7f4891f599e68de56197a9e85e42a279b3d36b3bfe937dc56d3f4c9e5c0c697fa03d69e8408e1bbdf49d81aece00565657ed6fcccf723be514d7b728f5f4bb1761454d07e6769ec969de454094a94da915fb8bb5cec855c3e9fcd3e77c590215d98aa88a9cf6394127799b47dddf494b387d5b0209fe195f6e0024ebf52225602df846777bd297c6c69ff4fdf28f15b431ea39d6a46bba3d31d82fc666826247922f7c1ea20a6cdb19adf3c1f879f21112e21fc9637326d4b91007e89912f0d958fbcf4135f72ddd81d861196916a60d483c4d86c19959a1c7a92b6d0e51effc4deb05df57a5c5e444d490c2040ae7263c50540d7d9ac213207107887b8432ffb0b39d453443aa0ac107536e8cf353fc12db53fa950dde1c5700864c8ebf7df6cd6aab650be658ae9581d9b6bd1a2ab072cd10fe644cf7f43c8a072854dfd0fc84bfb170c35fc8dc4ab4c746f4326491f8723336a7e19debb4646089fd252577bbfabd538d8c1ca98c4d63b33adfc1f9ae5001589335ef5a5d24b197ebfa1798030ed8928962706f0af40545d1fb9fa1343deee8ce78fa4977aab68b5b97785cb940e7eb6b80096fc31a5284fc2f10becbd93786ff3b33f57db979464d2a54b677981b6db95962d161bfd3f860f0b22075c6a50897a9c342a479f81d204dc917832b5a73341b1c1241bdcb6dc7d8c711d4eec290d980df3f12cc09cc06b1528ddd6f3f1f41859cbd1dcfbea457bace251a834dd4629e5b132582dc8b9aceefe3e48a66217ce98d72a1778f18486445e4878fb6529346bd83475bc42fb06b196209293eb4ed23d8217298deb8c392e8f0eb4df1f2014bf855aff8fe010ffd5dd3da8a77dd1d25c70f835e5cceccaf9ed95b1726abe70b4189e8c8ebcfbfa45f7227184841e6aef3e3e7eec37f9832507f7572cba814c5478546b22cfb3a8d0300f68145c55f6d425417bceb5b24a9408e4844f6a6a3c143f36ca701ceddfe44fa496453c48d288c5b6f08f1471586659d23c29a255bc2a8d0e1869bc91a9650d018bc3e20eb2f7089e29977faac46020b01cd01fedefe484dfa617431f02a106931410d64ab365bf8ed068e0235f8d2757fed289282686a55dd15a847b758842710d9c483cb907beceb86ac35a240dc3810320137cad68b451bccd49d7a285083df9d5f0df8592b0267e82dd82aa78155c26d26bc4faf4708927a114a3d069299a488932635bb46c96cf3678af463f960af3e750cdaeb322e10099adb7e3a966c43f68c32923fa9e70bc28f98d9ea54d24f3806ac9edea3206def17285f693ed52f26e39ef7dd91924a0e09213d9f2efb7339b7edb6fd58f6b88836d8804a20fc88f5988432c06ac030d05a4caeafe7f34a4acce70a6c82d98010a0dd412d2e789c0c652387dc31b3c4f6dc6dc4ba37951df7a4fc99d578e834a914d3921492cb4be9a87d7ee86e1b684cf6705110e8ec3278d7fc9fdf2bd9a2565cdb2c8abf4a0d8b5ad1ebf549cc05a11e09487978f9edc5e26c3d9ee31066e3a3dc836b585f537aa54542d6e8ccf2d72a9c66314a2572923e289ed7984dce71a424898d356eb4f17c7841ec6c54c8511e78f50b2bad1ce26cf5c490de6c5c397f0249d457ddeb155ff1f6685dd3959f21e33fc42f2debfa491f894fc2e132dfe23003e35c6dfb8decf3d066f025b94ca7dacb385a2a231128f4daf033418b380f191e8b730985fb06d5138e0cec450546f3782f237c13afa17f8f744a53992c9019e10e221f0b829ca395fe407ac85380391f91aca3eb67a489e8df617865f1f206fad7bb3e2653cd0469dc3990951004497cd2a2eb0042904c3ec2dbcab26a0bc46ea60b2240863d55252c3a8ae2939d62519217e31ca7b0b6a494c63b52a16a289fa94981b61be6dd9bae18c5b9dede401285766a1c556984339b24d33e77092ac686aa7b76700bed940ee0ac42397a6098d5c189324c86e1763896307dc9f2f87f2143260c680ffc5d2ac871ad79a07a3cac1b80580ecb4b084178a4422ac960a80ce795492ecb223a3c93176f929fda86e4d15dd20ea2b6476eb021c99034f2c2f37d07fc22380af7e1c045ac1cf5efe0c53e1e8b67729fd243af295b561618c579f445d06157123f2b72492ebe69df8bdfa24e76cbcadf06ac578a61ab767f132fa619d33e67de3173f1c2c2f218cbf884939dcf2be098c6c30c99931c9b0ca6ba745699557d1d7d47c1a7f5baab8360ee9f801ab3ef81cb4882d6489b322f0f3ee2d74e57795b1880b304865d6edea26064a540c253c4c2e86c91a68d2024e76a4baf72dce44e7ca6b88ac462dba127b064dca5f030a6bf7ff42a6857da8879e14f4a831002794da3c78950d4ada6c4f29cab756fd2b541aff1b14ea040db16a2ed55b5caa0f973971910f200ac7d85319a1cf3fe20379a7c28ff7c37e3be538bf00cfafef11fbc0bff8e9e15d9b3f51cd7d4e5e73797fcfe4a2e2941ac27d310896d4c7751bbbf5b83621a9e260858c96d50a3cbff44060f92726ee7fb01ba4717fc78a9ecf3c3d1ac9acbfce3858821bb191359297eb344f1febf18076fcf70a3c709e2cb9208464756fd2c393b1687b89675a4d809b113361222be0e3bbc80703c23f62b940bb417e44eae9d24360a06ae0564bb365f725cec952b7d63181f3307904104e410f1bb386c58e72bf9560056c1b363219391c2f315a6f6790389428cbfb297e15d6404ca65baf944b1198a98cc392bf946e941e04f0aa38be6d788030591b54c49753b16948d2759f5dd3987c12c3aa7d2d281d996466d2057b28d8cb24fdbb4367b287b38e6988c942505224971d06748523c7d48811e58e54832e43cf5e394b2c56ff797d9cbe8c3eea0d16c07c269fd380fc59ce40ede15305ea67f6efe2980a92702050ec281f69b94ea0b2b5024527403663b00efa6790539b74b4b542150739a9e0ba507e834fd9f3f2e8c82add5a77fa2ad13450ea51add9907ccb71735336c64c08c9d9a1b5edef707fec52240533e899fc51da053dc13d9dc7d42ecaa51452fdebdf775f7bbbd022370d9cbb71d9b4e44f7658dd67dbc99ac3ed0e0695549c8bdc12a6757a3096d40af346339e03a4d6597da087393f0c8f045943479f9edd83dbdd955ec5b8cc8c559668834a616d1a3b4b20eb4418cac54b57ab75e9b6d564c61e784d0cc8f238ce2f69b243aa580c3037f126de36f88325beb2e0b1fdb9d41f627d34b71e3b8541fab2534a476bea7d8a4e28ba13456ac0d0135f11648f1d63951840faf5d52949f9688a5b9a89339f8bd161de6989fe8fc3b1c305202918c04c4e4b350da1f9e72d3511faa91c3efb7ccdaf8ce5adba6803831f959198a30d31b9dc8026b71650700cd16d7b5cb4ccb8e47d1235b4790f4e29903fcfe0a76734aa5d20ef5373305fbf6319c5ff447e62db6f6ab72c6e4ff12d211fe74987a8e227c159f04223e844891f3af776c86cbfce6f7d7ef2d536c33301751d488fbf2bc10028a32063dab7bf3b6d6e682f3bb20f1752f532d09da4d7789ffee733a8ae0bb64b4984e6fb7d70e49219e72fd42dafb1e23594ee624d453ff39050b4bbc58303be87c3bc15e5532175d002a97f5721ebac384e95a096be49a6fcb1b4bcf229acfb5290582e6b4e41882efdf484359b9469d2c0f927043dcf3ce24d189d275413b2318e211c963836e7ccf5b129a5daa2cf6451715721796268f92299dab9080c999afc6e378ea357a092ea67e4fb120de26a8dad0532081663dd9bada0f5d84d3761d5662f119451d0753290b6629c3ab1bc6307297374c79cc3a6ba94fce62b485daa14377ace889919121abbf8cc786e3281beef59b8dc5600447e924560845c6dee71c289e839345db644e19a31fec26641e7370982654fbf6c540eb2118ad223186ade395f495254e237a9018c729115e348d30a8406392fa4c3427ba329e178099ee2a881e3439866aa325c4dbd42cb17c715592df3bf5254dd8714b6e6a479c4a42b091a09ab1416ed00ddde6dc4c618dbafd9e037f75d93c312fd83a75c5b0b8f2990b7807995ee7e4f8f4d324aaab4b4e0ce76ea33a0a01414a7da91c00ae9926b0974c3a9d4e4a02329e2c31fdf04bc3e4aeeb5bb30b04dfcfd3b0d02b894d7a76dbd63b1ec113a387256b6b7c05f652ae0d59971fa8ef3dc04aed14853b54b355f846f70b802a23662ac7211f6181318ba9a641932bd204c75d54d9f2649d12efc2b2657b3b5113776c272b911e7fdc0ec19270915051e798cf852ee15d97146f76c9c2a4f03eab7ea217b42fe92685b0c5b7e309bdb8a19d1c3e563d339cc8d5c29bffdaff7108310ea20a7d44e406216aaf6008c2826d6f35c7560632ef27fd4949a6128818f90962b09dcd74a61480281b9079248bf9b0b9329b648ac145920be7351df8d67f1c1ae65dcf14a6ddc6ed0aa10ca4aaa43d2920cba0d67ca9933efebba364a206c369387c90f9f8a292a531ac05b89a0924dd5de15af3833278c8b76e4b82434839891a4e0c3b1bbdce43dfa45fe04af628c8608e845e27bfb6217bc6667abb799b7a67d3699c40d6caec1ed689352dd5c3f6e460d0d644fa1bc113af70399a11b5f83b7b82cd34e0437138e04f36056060fc4f9d48f77160f553dea9d3ba5bb8115c7a90e521c03e4bbbe0960d10998e79d1569d9ec13c9e22a94f49743b59782e6493218e491292545397fc0422e8955e395478d964611c94a50df54b7d109c107f21edba24b66fc0139e45ace7d9041a221fe2df541289ba84cd30deac9f1c0277d253f9a917f1edd27f7a2f5a3d0e294eb90dee68f2d165e51144377757c07918fd5d8d2d47c23c626af3d0e14d134231d37018eb4ca934334fe2fd748897d71bb99a42d8be70c08c483d4777c3731063fee00eb53db4c9365b78f347c543eafbfd0b39cf9c24a724c4a5d077cc05f744867871f2c3016e0726bc24c3375063e028e2611caa29a9071cd6aa751969e576c866f4c047bbcc29ac47b152e98c95dc67bba33f4a2f7e5eeafe42b2e82bf30e70ffdc39d5262692a2fc2627340fb930f2660f1002b847c8eae265463020c5733e85861b6c025506b90327553660018564e58749406fde37259f459d64a95b959e033b514925d699e64335eb8347a621d63fdbf5e9d35f7267d6fe974e3c3840de0f879661edc479c24a7990526e0ccb593642c26f143c05452a06b9d4b706306f03807c45351b86188d8bf9da468602cfa0e4bf0fdcd15fd3b917796e494119a72e25041e408ca7b156262de6ef9df6c1cdf4b582f491d3e7681d9dfc027d1bc79de1b6793f63a5e0781a727e8f7f2fb127727a9555b6afb33c64bedc6c3db1c183d5e45f22f250755868fdbd42e2ffb4c492107e060f9bce0c280c490254f66aec19daff0040ea1551790e3c73966ad1da8c1d00a01235793c2143fcf7f69d91c34c441a1e796b786b2bff67e618f0fec152cb0bbf739df708492cc5976c5122aded08ba35c3bce1095991557605c63673250b8f94d1b72fe353cf69fd190ccf650108941c7c9ebbec02580f7ca0db626c58aa28c6415c75c66d6235b0975144329aa3def3c949fa90972755f526282e293836dc1558b9cbb56554fde46895e59ef50748ca51ae90b265b69570b1136da0c73d05fc22fc21e0b0532c003e46f4a026e786e8e9b3181edf656e651b7a6954bb2978b5a1dea9c1595795c0c142afda12cf23d998f692a0a0fd46b377e74c145c94651faf3a8dccc03c60ddb6e1dfc379cfc5473c5b04c143fd50240e4201a4bbb5ff9625159ff5c9351423b82ce353dd5f1e7eb738e19e0f68a460e81f7ff2efe67db325963212d035694d5ce157f381aa76c7d92fd5b85b22b95b73c40cd5dd37282884bebb23bc31cd587476c602bd0a31a62784a3461a97cf233e1b72de8503c0dbd5678121323278d4ffdf60e877c4bc8ddd0a6fad2ba3c23735fc46cb7bdb13bd3afed9303e0bc0a19ac43b697a715ca2af3f0cf190f89ca4164ed5b194eeda983cc9758f49b3f2cdb19f22f537391aca75e5469b7112b138db877d4772960bc2fe2edd2ed8b42c64a58a7df9c1006e943bba5c25bb339e1bc380e38489129bf5396cbfba1a0f3687cd2f0561187ad4e1c76090a3eaa71bfed488afd4790cc4671b23b3226f400fcd4fc5efe35b24e5634c059daa7837c48343794465ce62a4c52e7a75564cebc4d212b9a355e74f0970039aee9b009d884c4d11b5fa140fa07663972c0db4a4350e51eea026a0dc377912aa002431f8b553b35641522fcdba43eba0c0d49a178fc5b0cfdebf129f224a474dc2ad209a2891d5fe90c3a38374301bc402a8d9f13b2e88589a23d43610d76a1bf832d18381c677d1475074fa063e500", 0x2000, &(0x7f0000000e80)={0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, &(0x7f0000000a40)={0x90, 0x0, 0x0, {0x5, 0x0, 0x0, 0x400000000000, 0x0, 0x0, {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x4000}}}, 0x0, 0x0, 0x0, 0x0}) [ 1904.624255][ T2936] ntfs: (device loop3): check_mft_mirror(): Incomplete multi sector transfer detected in mft mirror record 2. 07:23:52 executing program 0: r0 = landlock_create_ruleset(&(0x7f0000000980)={0x1020}, 0x8, 0x0) readv(r0, &(0x7f0000000d40)=[{&(0x7f00000009c0)=""/115, 0x73}], 0x1) 07:23:52 executing program 2: syz_mount_image$ocfs2(&(0x7f0000000000), &(0x7f0000000100)='./file0\x00', 0x6000000, 0x3b, &(0x7f0000000200)=[{&(0x7f0000010000)="02020202020202027468697320697320616e206f6366733220766f6c756d650002020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202027468697320697320616e206f6366733220766f6c756d6500020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202027468697320697320616e206f6366733220766f6c756d65000202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202027468697320697320616e206f6366733220766f6c756d65000202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202024f434653563200007f1ef014ffffffff00000000002000000000000000000000000000000000000000000000310000000000000000000000751f1f6300000000751f1f63000000000000000000000000020000000000000000000000000000007f1ef01400000000000000000000000000000000000000000000000000000000b83abdfdac0a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005a00000014000000000000000000751f1f6300000000000000000300000058bf00000700000009000000000000000a000000000000000c0000000e000000020000003748825f0400"/8480, 0x2120}, {&(0x7f0000012120)="00000000000000000000000000000000a92c83a1352f432895326cda257351bf00000000000000000000000000000000000000000000000000010000ade51acc7e0cd8aecea1549d00"/96, 0x60, 0x2140}, {&(0x7f0000012180)="47524f5550303100c00f0020710e00007f1ef0140000000000000000000000000f000000000000000400000000000000db7466b36d0c00000000000000000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f00"/640, 0x280, 0x4000}, {&(0x7f0000012400)="47524f5550303100c00f1001f60000007f1ef0140000000000000000000000000c0000000000000008000000000000000cbc8352f80100000000000000000000ffffff0300"/96, 0x60, 0x8000}, {&(0x7f0000012460)="494e4f44453031007f1ef014ffff010000000000000000000000000000000000380f000000000000ed41030011000000751f1f6300000000751f1f6300000000751f1f63000000000000000000000000090000000000000000000000000000007f1ef01400000000000000000000000000000000000001000000000000000000280ff83ca00400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000380f0000000000000900000000000000100001022e0000000900000000000000100002022e2e00003d42000000000000180f0a026c6f73742b666f756e640000", 0x100, 0x9000}, {&(0x7f0000012560)="494e4f44453031007f1ef014ffff020000000000000000000000000000000000380f000000000000ed41040011000000751f1f6300000000751f1f6300000000751f1f630000000000000000000000000a0000000000000000000000000000007f1ef01400000000000000000000000000000000000001000000000000000000e8a6f417ed1600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000380f0000000000000a00000000000000100001022e0000000a00000000000000100002022e2e00000b0000000000000018000a016261645f626c6f636b7300000c0000000000000020001201676c6f62616c5f696e6f64655f616c6c6f6300000d0000000000000014000801736c6f745f6d61700e00000000000000180009016865617274626561740000000f000000000000001c000d01676c6f62616c5f6269746d6170000000100000000000000018000b016171756f74612e7573657200110000000000000018000c016171756f74612e67726f757012000000000000001c000f026f727068616e5f6469723a303030300013000000000000001c000f026f727068616e5f6469723a3030303100140000000000000020001101657874656e745f616c6c6f633a30303030000000150000000000000020001101657874656e745f616c6c6f633a3030303100000016000000000000001c001001696e6f64655f616c6c6f633a3030303017000000000000001c001001696e6f64655f616c6c6f633a30303031180000000000000018000c016a6f75726e616c3a30303030190000000000000018000c016a6f75726e616c3a303030311a000000000000001c0010016c6f63616c5f616c6c6f633a303030301b000000000000001c0010016c6f63616c5f616c6c6f633a303030311c00000000000000200011017472756e636174655f6c6f673a303030300000001d00000000000000200011017472756e636174655f6c6f673a303030310000001e000000000000001c0010016171756f74612e757365723a303030301f000000000000001c0010016171756f74612e757365723a303030312000000000000000200011016171756f74612e67726f75703a303030300000002100000000000000b80c11016171756f74612e67726f75703a3030303100"/896, 0x380, 0xa000}, {&(0x7f00000128e0)="494e4f44453031007f1ef014ffff0300000000000000000000000000000000000000000000000000a481010011000000751f1f6300000000751f1f6300000000751f1f630000000000000000000000000b0000000000000000000000000000007f1ef0140000000000000000000000000000000000000000000000000000000085ed3c1db603000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f300"/224, 0xe0, 0xb000}, {&(0x7f00000129c0)="494e4f44453031007f1ef014ffff0400000000004400000000000000000000000000110000000000a481010091040000751f1f6300000000751f1f6300000000751f1f630000000000000000000000000c0000000000000000000000000000007f1ef01400000000000000000000000000000000000000000000000000000000cccff09f620200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001a0000001001000044000400f30001000000000000000000f6000000100100000800000000000000", 0xe0, 0xc000}, {&(0x7f0000012aa0)="494e4f44453031007f1ef014ffff0500000000000100000000000000000000000040000000000000a481010011000000751f1f6300000000751f1f6300000000761f1f630000000000000000000000000d0000000000000000000000000000007f1ef01400000000000000000000000000000000000000000000000000000000075330279202000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f30001000000000000000000000000000000010000001842000000000000", 0xe0, 0xd000}, {&(0x7f0000012b80)="494e4f44453031007f1ef014ffff0600000000004000000000000000000000000000100000000000a481010011020000751f1f6300000000751f1f6300000000751f1f630000000000000000000000000e0000000000000000000000000000007f1ef014000000000000000000000000000000000000000000000000000000009a7d2e882505000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f30001000000000000000000000000000000400000001801000000000000", 0xe0, 0xe000}, {&(0x7f0000012c60)="494e4f44453031007f1ef014ffff0700000000000020000000000000000000000000000800000000a481010091040000751f1f6300000000751f1f6300000000751f1f630000000000000000000000000f0000000000000000000000000000007f1ef0140000000000000000000000000000000000000000000000000000000025fea9c2220600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008f11000000200000007e0100f30001000000000000000000710e0000002000000400000000000000", 0xe0, 0xf000}, {&(0x7f0000012d40)="494e4f44453031007f1ef014ffff0800000000000200000000000000000000000060000000000000a481010011100000751f1f6300000000751f1f6300000000761f1f63000000000000000000000000100000000000000000000000000000007f1ef014000000000000000000000000000000000000000000000000000000008f1f0d952103000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f30002000000000000000000000000000000010000001c420000000000000100000001000000344200"/256, 0x100, 0x10000}, {&(0x7f0000012e40)="494e4f44453031007f1ef014ffff0900000000000200000000000000000000000060000000000000a481010011100000751f1f6300000000751f1f6300000000761f1f63000000000000000000000000110000000000000000000000000000007f1ef01400000000000000000000000000000000000000000000000000000000f539bcb01c07000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f300020000000000000000000000000000000100000028420000000000000100000001000000384200"/256, 0x100, 0x11000}, {&(0x7f0000012f40)="494e4f44453031007f1ef014ffff0a0000000000000000000000000000000000380f000000000000ed41020011000000751f1f6300000000751f1f6300000000751f1f63000000000000000000000000120000000000000000000000000000007f1ef0140000000000000000000000000000000000000100000000000000000090aa2dc04d0200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000380f0000000000001200000000000000100001022e0000000a00000000000000280f02022e2e00"/256, 0x100, 0x12000}, {&(0x7f0000013040)="494e4f44453031007f1ef014ffff0b0000000000000000000000000000000000380f000000000000ed41020011000000751f1f6300000000751f1f6300000000751f1f63000000000000000000000000130000000000000000000000000000007f1ef014000000000000000000000000000000000000010000000000000000008ba223c5f20600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000380f0000000000001300000000000000100001022e0000000a00000000000000280f02022e2e00"/256, 0x100, 0x13000}, {&(0x7f0000013140)="494e4f44453031007f1ef014ffff0c00000000000000000000000000000000000000000000000000a481010091040000751f1f6300000000751f1f6300000000751f1f63000000000000000000000000140000000000000000000000000000007f1ef014000000000000000000000000000000000000000000000000000000002b6b221d32010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010400f300"/224, 0xe0, 0x14000}, {&(0x7f0000013220)="494e4f44453031007f1ef014ffff0d00000000000000000000000000000000000000000000000000a481010091040000751f1f6300000000751f1f6300000000751f1f63000000000000000000000000150000000000000000000000000000007f1ef014000000000000000000000000000000000000000000000000000000001a2efe98c1030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010400f300"/224, 0xe0, 0x15000}, {&(0x7f0000013300)="494e4f44453031007f1ef014ffff0e00000000000001000000000000000000000000400000000000a481010091040000751f1f6300000000751f1f6300000000751f1f63000000000000000000000000160000000000000000000000000000007f1ef01400000000000000000000000000000000000000000000000000000000304f318b65040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020000000004000000010400f30001000000000000000000fe030000000400003c42000000000000", 0xe0, 0x16000}, {&(0x7f00000133e0)="494e4f44453031007f1ef014ffff0f00000000000000000000000000000000000000000000000000a481010091040000751f1f6300000000751f1f6300000000751f1f63000000000000000000000000170000000000000000000000000000007f1ef0140000000000000000000000000000000000000000000000000000000039a2374834010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010400f300"/224, 0xe0, 0x17000}, {&(0x7f00000134c0)="494e4f44453031007f1ef014ffff1000000000000008000000000000000000000000000200000000a481010011010000751f1f6300000000751f1f6300000000751f1f63000000000000000000000000180000000000000000000000000000007f1ef0140000000000000000000000000000000000000000000000000000000089fc747cf707000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f30001000000000000000000000000000000000800001802000000000000", 0xe0, 0x18000}, {&(0x7f00000135a0)="494e4f44453031007f1ef014ffff1100000000000008000000000000000000000000000200000000a481010011010000751f1f6300000000751f1f6300000000751f1f63000000000000000000000000190000000000000000000000000000007f1ef0140000000000000000000000000000000000000000000000000000000096f2f575dd03000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f30001000000000000000000000000000000000800001822000000000000", 0xe0, 0x19000}, {&(0x7f0000013680)="494e4f44453031007f1ef014ffff1200000000000000000000000000000000000000000000000000a4810100d1000000751f1f6300000000751f1f6300000000751f1f630000000000000000000000001a0000000000000000000000000000007f1ef014000000000000000000000000000000000000000000000000000000000ea913a3b7030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000300f00"/224, 0xe0, 0x1a000}, {&(0x7f0000013760)="494e4f44453031007f1ef014ffff1300000000000000000000000000000000000000000000000000a4810100d1000000751f1f6300000000751f1f6300000000751f1f630000000000000000000000001b0000000000000000000000000000007f1ef014000000000000000000000000000000000000000000000000000000003feccf2644010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000300f00"/224, 0xe0, 0x1b000}, {&(0x7f0000013840)="494e4f44453031007f1ef014ffff1400000000000000000000000000000000000000000000000000a481010011080000751f1f6300000000751f1f6300000000751f1f630000000000000000000000001c0000000000000000000000000000007f1ef01400000000000000000000000000000000000000000000000000000000fe0c1aafcb0400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e70100"/224, 0xe0, 0x1c000}, {&(0x7f0000013920)="494e4f44453031007f1ef014ffff1500000000000000000000000000000000000000000000000000a481010011080000751f1f6300000000751f1f6300000000751f1f630000000000000000000000001d0000000000000000000000000000007f1ef01400000000000000000000000000000000000000000000000000000000cf49c62a380600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e70100"/224, 0xe0, 0x1d000}, {&(0x7f0000013a00)="494e4f44453031007f1ef014ffff1600000000000100000000000000000000000020000000000000a481010011100000751f1f6300000000751f1f6300000000761f1f630000000000000000000000001e0000000000000000000000000000007f1ef01400000000000000000000000000000000000000000000000000000000f4300ba0d007000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f30001000000000000000000000000000000010000002042000000000000", 0xe0, 0x1e000}, {&(0x7f0000013ae0)="494e4f44453031007f1ef014ffff1700000000000100000000000000000000000020000000000000a481010011100000751f1f6300000000751f1f6300000000761f1f630000000000000000000000001f0000000000000000000000000000007f1ef01400000000000000000000000000000000000000000000000000000000f5bce4d3ed03000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f30001000000000000000000000000000000010000002442000000000000", 0xe0, 0x1f000}, {&(0x7f0000013bc0)="494e4f44453031007f1ef014ffff1800000000000100000000000000000000000020000000000000a481010011100000751f1f6300000000751f1f6300000000761f1f63000000000000000000000000200000000000000000000000000000007f1ef014000000000000000000000000000000000000000000000000000000004834299b3905000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f30001000000000000000000000000000000010000002c42000000000000", 0xe0, 0x20000}, {&(0x7f0000013ca0)="494e4f44453031007f1ef014ffff1900000000000100000000000000000000000020000000000000a481010011100000751f1f6300000000751f1f6300000000761f1f63000000000000000000000000210000000000000000000000000000007f1ef014000000000000000000000000000000000000000000000000000000002a04fdb11b01000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f30001000000000000000000000000000000010000003042000000000000", 0xe0, 0x21000}, {&(0x7f0000013d80)="c03b39980000000400000000000010000000200000000001000000010000000100000000000000000000000000000000a92c83a1352f432895326cda257351bf0000000100"/96, 0x60, 0x218000}, {&(0x7f0000013de0)="c03b39980000000400000000000010000000200000000001000000010000000100000000000000000000000000000000a92c83a1352f432895326cda257351bf0000000100"/96, 0x60, 0x2218000}, {&(0x7f0000013e40)="7024f50c00000000803a0900803a090010270000060000000000000005000000380f000000000000ed41030011000000751f1f6300000000751f1f6300000000751f1f63000000000000000000000000090000000000000000000000000000007f1ef01400000000000000000000000000000000000001000000000000000000d394d8b5740300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000380f0000000000000900000000000000100001022e0000000900000000000000280f02022e2e00"/256, 0x100, 0x421c000}, {&(0x7f0000013f40)="0000000000000000000000000000000000000000000000005f608695f80700000200"/64, 0x40, 0x421cfe0}, {&(0x7f0000013f80)="000000000000000000000000000000000000000000000000b6ad528d050000000300"/64, 0x40, 0x421dfe0}, {&(0x7f0000013fc0)="0000000000000000000000000000000000000000000000009a048ad7060000000400"/64, 0x40, 0x421efe0}, {&(0x7f0000014000)="0000000000000000000000000000000000000000000000001f5df08806000000c024f50c0000000001000000010000000200"/64, 0x40, 0x421ffe0}, {&(0x7f0000014040)="00000000000000000000000000000000000000000000000090aefd31bc000000", 0x20, 0x4220fe0}, {&(0x7f0000014060)="000000000000000000000000000000000000000000000000eeffe33800000000", 0x20, 0x4221fe0}, {&(0x7f0000014080)="c024f50c0000000001000000010000000200"/32, 0x20, 0x4224000}, {&(0x7f00000140a0)="00000000000000000000000000000000000000000000000090aefd31bc000000", 0x20, 0x4224fe0}, {&(0x7f00000140c0)="000000000000000000000000000000000000000000000000eeffe33800000000", 0x20, 0x4225fe0}, {&(0x7f00000140e0)="7124f50c00000000803a0900803a0900102700000600000000000000050000000060000000000000a481010011100000751f1f6300000000751f1f6300000000761f1f63000000000000000000000000100000000000000000000000000000007f1ef014000000000000000000000000000000000000000000000000000000008f1f0d952103000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f30002000000000000000000000000000000010000001c420000000000000100000001000000344200"/256, 0x100, 0x4228000}, {&(0x7f00000141e0)="00000000000000000000000000000000000000000000000093abe5e6030700000200"/64, 0x40, 0x4228fe0}, {&(0x7f0000014220)="000000000000000000000000000000000000000000000000b6ad528d050000000300"/64, 0x40, 0x4229fe0}, {&(0x7f0000014260)="0000000000000000000000000000000000000000000000009a048ad7060000000400"/64, 0x40, 0x422afe0}, {&(0x7f00000142a0)="0000000000000000000000000000000000000000000000001f5df08806000000c124f50c0000000001000000010000000200"/64, 0x40, 0x422bfe0}, {&(0x7f00000142e0)="000000000000000000000000000000000000000000000000bc07256bbf000000", 0x20, 0x422cfe0}, {&(0x7f0000014300)="000000000000000000000000000000000000000000000000eeffe33800000000", 0x20, 0x422dfe0}, {&(0x7f0000014320)="c124f50c0000000001000000010000000200"/32, 0x20, 0x4230000}, {&(0x7f0000014340)="000000000000000000000000000000000000000000000000bc07256bbf000000", 0x20, 0x4230fe0}, {&(0x7f0000014360)="000000000000000000000000000000000000000000000000eeffe33800000000", 0x20, 0x4231fe0}, {&(0x7f0000014380)="0500"/32, 0x20, 0x4234000}, {&(0x7f00000143a0)="00000000000000000000000000000000000000000000000033f428d205000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100"/96, 0x60, 0x4234fe0}, {&(0x7f0000014400)="0000000000000000000000000000000000000000000000007375191502010000", 0x20, 0x4235fe0}, {&(0x7f0000014420)="0500"/32, 0x20, 0x4238000}, {&(0x7f0000014440)="00000000000000000000000000000000000000000000000033f428d205000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100"/96, 0x60, 0x4238fe0}, {&(0x7f00000144a0)="0000000000000000000000000000000000000000000000007375191502010000", 0x20, 0x4239fe0}, {&(0x7f00000144c0)="47524f555030310000010004fe0300007f1ef01400000000000000000000000016000000000000003c420000000000006f711d99fb01000000000000000000000300"/96, 0x60, 0x423c000}, {&(0x7f0000014520)="494e4f44453031007f1ef0140000010000000000000000000000000000000000380f000000000000ed41020001000000761f1f6300000000761f1f6300000000761f1f630000000000000000000000003d4200000000000000000000000000007f1ef01400000000000000000000000000000000000001000000000000000000c995d9cc97070000000000000000000000000000000000003c420000000000000000000000000000000000000000000000000000000000000000000000000000380f0000000000003d42000000000000100001022e0000000900000000000000280f02022e2e00"/256, 0x100, 0x423d000}], 0x0, &(0x7f0000014620), 0x1) [ 1904.736985][ T2936] ntfs: (device loop3): load_system_files(): $MFTMirr does not match $MFT. Mounting read-only. Run ntfsfix and/or chkdsk. 07:23:52 executing program 0: r0 = landlock_create_ruleset(&(0x7f0000000980)={0x1020}, 0x8, 0x0) readv(r0, &(0x7f0000000d40)=[{&(0x7f00000009c0)=""/115, 0x73}], 0x1) 07:23:52 executing program 0: r0 = syz_io_uring_setup(0x4636, &(0x7f0000000240), &(0x7f0000002000/0x2000)=nil, &(0x7f0000fed000/0x11000)=nil, &(0x7f0000000100)=0x0, &(0x7f0000000040)=0x0) bpf$PROG_LOAD(0x5, &(0x7f0000000080)={0x0, 0x8, &(0x7f0000001fc0)=ANY=[@ANYBLOB="620af8ff25200021bfa100000000000007010000f8ffffffb702000003000000bd120000000000008500000006000000b70000000000000095000000000000003faf4f2aa3d9b18ed812a2e2c49e8020a6f4e0e4a9446c7670568982b4e020f698393aa0f3881f9c24aa56f15199fa093c59d66b5ece9f36c70d0f13905ea23c22"], 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, '\x00', 0x0, 0x0, 0xffffffffffffffff, 0x8, 0x0, 0x0, 0x10, 0x0}, 0x80) r3 = openat$damon_schemes(0xffffffffffffff9c, &(0x7f0000000180), 0x80800, 0x0) syz_io_uring_submit(r1, r2, &(0x7f0000000000)=@IORING_OP_READ=@pass_buffer={0x16, 0x0, 0x0, @fd=r3, 0x0, &(0x7f0000000140)=""/14, 0xe}, 0x0) io_uring_enter(r0, 0x2fe, 0x5, 0x0, 0x0, 0x0) [ 1904.799577][ T2952] loop2: detected capacity change from 0 to 196608 [ 1904.807537][ T2952] (syz-executor.2,2952,1):ocfs2_parse_options:1455 ERROR: Invalid heartbeat mount options [ 1904.833170][ T2952] (syz-executor.2,2952,1):ocfs2_fill_super:1173 ERROR: status = -22 [ 1904.891786][ T2936] ntfs: volume version 3.1. [ 1904.915888][ T2936] syz-executor.3: attempt to access beyond end of device [ 1904.915888][ T2936] loop3: rw=0, sector=2304, nr_sectors = 1 limit=2304 [ 1904.934065][ T2936] ntfs: (device loop3): ntfs_end_buffer_async_read(): Buffer I/O error, logical block 0x900. [ 1904.946352][ T2936] syz-executor.3: attempt to access beyond end of device [ 1904.946352][ T2936] loop3: rw=0, sector=2305, nr_sectors = 1 limit=2304 [ 1904.960702][ T2936] ntfs: (device loop3): ntfs_end_buffer_async_read(): Buffer I/O error, logical block 0x901. [ 1904.971463][ T2936] syz-executor.3: attempt to access beyond end of device [ 1904.971463][ T2936] loop3: rw=0, sector=2306, nr_sectors = 1 limit=2304 [ 1904.985828][ T2936] ntfs: (device loop3): ntfs_end_buffer_async_read(): Buffer I/O error, logical block 0x902. [ 1904.996464][ T2936] syz-executor.3: attempt to access beyond end of device [ 1904.996464][ T2936] loop3: rw=0, sector=2307, nr_sectors = 1 limit=2304 [ 1905.010939][ T2936] ntfs: (device loop3): ntfs_end_buffer_async_read(): Buffer I/O error, logical block 0x903. [ 1905.031437][ T2936] syz-executor.3: attempt to access beyond end of device [ 1905.031437][ T2936] loop3: rw=0, sector=2308, nr_sectors = 1 limit=2304 [ 1905.055934][ T2936] ntfs: (device loop3): ntfs_end_buffer_async_read(): Buffer I/O error, logical block 0x904. [ 1905.066714][ T2936] syz-executor.3: attempt to access beyond end of device [ 1905.066714][ T2936] loop3: rw=0, sector=2309, nr_sectors = 1 limit=2304 [ 1905.081314][ T2936] ntfs: (device loop3): ntfs_end_buffer_async_read(): Buffer I/O error, logical block 0x905. [ 1905.091737][ T2936] syz-executor.3: attempt to access beyond end of device [ 1905.091737][ T2936] loop3: rw=0, sector=2310, nr_sectors = 1 limit=2304 [ 1905.105806][ T2936] ntfs: (device loop3): ntfs_end_buffer_async_read(): Buffer I/O error, logical block 0x906. [ 1905.117306][ T2936] syz-executor.3: attempt to access beyond end of device [ 1905.117306][ T2936] loop3: rw=0, sector=2311, nr_sectors = 1 limit=2304 07:24:07 executing program 1: mkdir(&(0x7f0000000400)='./file0\x00', 0x0) r0 = openat$fuse(0xffffffffffffff9c, &(0x7f0000002080), 0x42, 0x0) mount$fuse(0x0, &(0x7f00000020c0)='./file0\x00', &(0x7f0000002100), 0x0, &(0x7f0000002140)=ANY=[@ANYBLOB='fd=', @ANYRESHEX=r0, @ANYBLOB=',rootmode=0000000000000000040000,user_id=', @ANYRESDEC=0x0, @ANYBLOB=',group_id=', @ANYRESDEC=0x0]) read$FUSE(r0, &(0x7f00000021c0)={0x2020, 0x0, 0x0}, 0x2020) write$FUSE_INIT(r0, &(0x7f0000004200)={0x50, 0x0, r1}, 0x50) syz_fuse_handle_req(r0, &(0x7f000000a680)="f2dc9578c61994cf938a7621ac049a6d63cea9535d30d26edbb299ce0df1caaa2d572e7e3f138b32748824c179e9069a074599f8c5142a6b07bd3e7ce9f5f5730cc35d00260c16aea6d183cfab504764e7a6b5ca82062a069826c6a0dd415f723d11e7ad580efce4718e67ef24c2b058a5d5bcfac5d10b96cc5f30ae1e55ac6743858264d5e83bfc6251d690a684153599ce666fadd8124bd6e9552ce6803d3ec3db5c49c36aec21a2f8e83c270a34f4c8fc5bc0aa9bb27990d3d7d7377ccaf59431a50d729cfea9a95192edd372dc611197497d92e42c0ba8e55d60e0945344cacf86e4f5a06bb68d15da7bfd091340eb87c66395930dc8528e1898f6c7231cacf11bf35b0b45373e7b7e81c91842216477966f66f43db170e8b5df42312208748d394c7da23b366ab71a87c6f966ac6b768347dcadd2c876f24bc4c7edf7c792e6a5a154fe0f0699296ed5f66e614f06a7e0814bccdf19b69e1b8694673528768065b3347d9a6dc3bbab2390e3e5f3bdd93cba7d7e3180548091c4d18ff32f598f94a9c569c352568e5e577ccc792e58044457d1bfabd4d569106252bf9f7f389f82fde530468d5c79cd4f1b37dc7f371c31fba401f5643a3922e6fad6d063d590d736ed522ce3b1fa0520727a0b5ea72825e3969584266415a676017b3ab22062acff919b6d2b67dd1fce30af908a95fe9d221b0a7c06b8b51bd7de1748f3f446df7edbbe1df499cb1fb7bffabf9e3382923ec67e5b7fa8d2cf40553e26ec112272858e08919d5ae4e40a88adb207de714a1631a748c028c867db0553938680904875597c15094be7c7f2537efb0581217b9485a6538cfa10afd888a822532c9c1fa69adf9c73a42cbfc88b2fd499f61fd3c2e306ec76205d8ab8155b8e124aec587bcd09b1a60978410baed82afa74f28859bdf0d4ca0f950b474d723f85f1b6056b63e86d52a65838bcb29a238725ed6a05041037dfb32319ab917aa91a911fca8a0aa0e567f3a12947a8ab2f7639928b9d0868e8f842e1a923751fe24fe42a8dfbccd291e6773aa64cfa17b1d38087d259d8a4e64314bc0a054e6eed5466f247618d082b1effa1f242e2120c11f04f068a198d38adc770a356338af053cfd99005dbc42804d13bc0a2b2329f37845a9f056aba133a82b844c59fdbf17cd765563fb79d5ed6d5034365e519947f0d47f3dd0867446898637fbdba769ba8f69d15d79fcadd9207789179f0cbca87cac20c859bd8910c5b590b02f9ad384827306c51651e3d562d3ae450b27b07f989ce333429a0d12898553c08f8a5a0bde11a93dd58ccf66ef37d6b02b5afc1462dd1375037420123f0c1dfcc23e8c29a078ba09e829e7efa9a5e47a98f776d67f4cdd948083b213ae88565fbd69cda8806cd3b5006cbba3f87a13925f0ee4d3b5428825fba78a6664f889df80c9997ea730385b88a1f3142bce20c253c2bed257097eeeb63836c65582187ec19b376e1a2c786f4dc4571e9a8cd9015d13fe8987cf5bc269a5fea8c1a77b1c11dede4c09a315a31a0d7e67a17a28675742f66867b7588714a33a4168bf1da227c2d0c88c6edc5cf9c265bdd34b71b3fb87a14ce2a89dbdc56fa4a8664d6b9e7b717b8dcaa3d489a8d2c75ebf03f6493afabb516ba71479ef8aedf651f9515eaa44601888ad2438db03eaa1c0f5f479087f3aa22df5dae1984ab59f17ea356f4abd802eee24c78d230d3b5a54faf896bfcf881b9badb4e84a56f159e5725165c041d89b8534c48a751bae12bb2299013d301964e7b8f27f941db96c9d592e886972f733ff15994e54727ca4cbf884450933020bdd8dd0889c8c1ffe566d58d9e9fe6467f453b21f88c49eb6007816830974829b0732d648e5dc53eb4cb51f10634b48fcdc20af089f92c4662c6c0c4abd9cfc165476d8a33d5861bfa3722a7d4e36283cc79c2d715797651a3b77d34bd34893ffcd8cc78df5dd4d4234ed70e4fc9a8cee4a7bb8eb7a07eff1cc225786c19564e3d374943b254a166f8a43504036fa0288c7b10b1ff3b5684b46863fafa0338c50fcf7daf4cf5f5a742808f1d0207229ba0bff4344ee4613d606a101c47c07560cdb0efd213aac2e010fe5bb183193541a8ea262cb3a3e2c543d93c76c9d80c1713868681724822e27a80ef3289b874be77680f6c7fc6384a8a4740959e365976a01029a9cb27484aba0e9f55683856ca2848797c8b2846bc9a43ad7f1d150d4d3b4c1e832a34ad83d3e56d7c3fcc71d02f7daf7e6b5a1704c5550577e1f482efe3f5446aaa019f9396ea63b9d14570ba3468cc25145307c9d7dd4447e400d087f46467ae3a98e6dcaac53f6a4d71ab6ae1c45ec15424cebe7cf1dfecdf8fb2404bda64e229178b0b199474e79659fe16e96e927be38a3a1b7d9a2aaa7933d627a3010482fc32e06d10a6438577280fc08bfd954d4c7251d3dbf99bced67c1cf1c6299bd08b492ee8a23723f7d45e78520a0bf889603f20add15063ef612ece4bfc1a31c425628248e4d8ee261a0fda95a1e5ca1432b0f23ff2dac77fb97c62969ed41728f02a1f2ac92d9d344076384758ed89fbda9fdded9a6a980a5161b90f840397fd21fa3de514bf5a09843a9fc5a08895c6d5e416d836fc76804f4163c04cbea5a9bf46f1e1da583e8c0e1168c1e13c8a2ab1d1ccec531e2fb44c01652d92127156eed652ec30ad6be2e7ca4650cd3085603a848447e32b2e7001959a5bde0e28ed1e1962838acde3e521931e7f0355caeddb565dedd2da5920c0661a645e56f9c5506aa53552a042ff8ddcb6a3a166d819fc728483258eda01ba00680c99587574aa20467421b208ea987e4a009981b752710a484babc7b090112aadb589534eabde01a518520655665e02575ac70ccc31007ce737b148d3e92a52d4ea651f951609275734bf82f8c987db1803559209660c52678094d94ae4f4b6d706f847c09ca69c7fedecf51c1b2386a362faaa2f4ba004bf80be503523e29152b24c2709070ef8c79059252eff39c300da295b2a246ff8907b281aedddc2688709d20ae65551f91c86fbf37398eca2cb8d760b8ffc7f3592ed30dd2c88f8f518819cecb4b094e808572d50a76d3d7365cad98e8c9348361e28d98f44c5daa382017548bf75ef7be9f4d836932a6530204fcd2b7b0e1958347c1396e827ff5e63ab07081413b2e34e2e4964f82772656b49d0f81ac99879dec266019fe7794abf95dafd63e069fc1662df1fae47e90f4196241bcf3235181d23b37cb0ce9a352afa5ccc8fc863e1e9f7ddf5cd4b123a1360e7fa6ce1885afa332e5b50ce46a3cdde2cf16395af3b3b0ab8b8d01e436d08e112f1d121dbc64a503e50e47d4af2d29f7c2c6f55ad224da459ad765033bc26f398173c3bb80137ba6a21a5e87c9c5a9eaf41831b4f8f225aa9c64f2e54fab0e0f75b06c0f42fe7b6f193fdc5f9a6b24f910d08b1f6bd1aa6ac8ae7b0c397bbb80931b28995aac03e53a3d1f7afa034b1887e374cda3917f880171b53d64364633eff727147bb673d1208eae02bcb5eb2623e826ae46c4464297e79d0f146ae31dc8d684e97362a325a77d4fabc0dc14a58f9e538e3fbfc689049e7c07b98c9c2eba5eb3e37c7eae83c38406eae03749fec1de11f9dda4e6fc3f57b3daa50d8cb6135e58b3be8640e85b7f6874c7a46acb95d6f1702cfcf1ce53646e94c90a36660e343d59ff886e6d16848e149f0239135609caf2381df9c5693b7437fa14c9aab495d70d1945affec2d97a0a207a78b122e2d45631036f73c63ea2cc3959faf31b8a7906db710b733f3ab44e42b01a928b8f7ad5d741cd4ab0daf214c9c08acfac158a9b6b63ed9f6e2aec941154a08e01338c1825c3b1a6482a30bbbaf7b5d0db3a3a7446bb540136ef5ddbc5e4d376e2455c46b6342633086a0d683f659d5bef13a019f76597441560671c50ac74a1d903dfd37a08e578201e5116e22d79ad8e58d2e6f0123d5f8d50fc264fd993f0aab1adbb920bbc31ed062a59fce5341cb682cfa78d1576106ab1c7a9b0efcdfd47548986f8a17ae737ede69ecb7c417a4d3270890e191351d841ebf330b267e63c4c4add2b55a66067fb032f18a8647ad0493d2c841a4921807625178a99ca9663b11c051bb0fb6a05d4365538d3131d09174cca1954d57cca8c1c8700312efb2ed0c139af9dad373a7c45b24908bf9141f3c85d86a1605cc035b98866d32e1866808e21f1c4ff0c3b917a63b0a6a1fa8154e2a9f91cef23667c55e07629d49d86d3f459274e549f3521a34f62e4c9a7d3546eae2c7a230bfba1d06ff2906c90880c2d17cd01ad2a8f7dee1fb54f994b1a2d360190f31676787f9a4ed1329e505c961d73e7c1c6296215ececb09b08d71fe81b57f4dd21067bc3680e07f7c0ec0493fd86c3cc4e0ce99bc712547799a76ae011c118a0c0a038d49227f04459957fdce11244f03fb75bc9d979e46ee5e36652a73658e2430ac16b0688794440da15074fdde4cc64ca9b6c912eeeb41c424216222ecf59611856f79289c99767dc273f7d4afe46aed4f538e9231b9e55bdfd57f427437a9fe5453441beedbd30a9b61bae7ce36dae79a260247c51d0ed5e92df31b114c62b201f9b1530926362eb447c57fe346213ca9471ff851b3a78274d91667fd8a2142be1027c641a650983685e241ab3b7058e6fd9313e9aef348df5389a3e5b5919c2fe31242649e5fb4442d00e114bcb776d21cc70c13e3f0e6445300d0fc934087c5d9858e556bdf3384cad33fa7b94f7287c13178d7e7f1411888945d69aa3afb805cf13f720a59e7bc4e48da029eb97b0b276342f88ec6a997f13cd8bd3f2abd1c317fbc6701ec8e2c89a7f6db91899c020478b714a40fe01b9e30487326e435d6c0643c90cc542e7ce93907f513fe27f217a597adba58aa89e8f25b9874923ca2a9b99512e1ebd7e5661d2c460709713ff9e55d22512c4bb4380a2023e0f62ba2265df7023ec7e98b52bc7a9a20030210445e04e03a5706bf28136615319deee46b0f8ffc63a2596f81edb161d85d95ea826b4c56cda064b7730bbbabc1413c5c41951a811b9079b0e736a8bf34a65456468a4d4dcfbe07ca92579f72e2afeede987bcf6fb02cc85383989344e1dd34dae00d7bbda1055c69cbb4b60649ea0f2da4c731a1deb1fac2db5a102d837de2f35f3eec936c9f0b8a90ae62ea3306200204cc51552174cc72f9c97b55d9a1c1de7a004ac5178f5d8dae3f2643aea2f0593885593790b2d02a5b779c853807b3cf933189840a67cbdc7e064a92021d01b43c39259bf253b0a757fa16aa9b7007f9404058dc013f213c10d983bb6b37b688f0616df2675ece9c2936e800e92d9fe26c384be24303ec0bee74a870313288728a6cfa9d57b8197ab7fdc34b7f1eed4173fe4048e2bf822fefc461e80ad6b2e82f9e5a2829d83bc5715adaf186a9db625f895b378ff17aa7a40247f521e7a74e079a947384fe724f8f123ae6941f5935fd90cd821733a1a26aeb951d66239b4401a64f220d3a3ce24c0c60f177a2d10dc1b8b0e09426904d4b7e3fc6be1facc605a2a38af320e3388b71c21ea1aad83dca11df344507b91f73c9c50f9660679b640955b6a54b132861ede6e0932129b18bb15c4028d1cb58beb8e047c0348710c0d2a494ddf22419255808e84b7d2929177e31b4629ceba2e430b755d5598d3979fda859c8906cabe406b415440839ba01a7751101487a6dcc72a90f521f036046a9c91837727fd544f66abc6e58259f18211ab4f60141026d129638ddbbc197fa08102134b9a5e84d1b0b68f27b15abce8cc1ab54758c74cf927ebae8b24c02c0568b99ff797dcd641f9d68f824f8ebac0c7bceca8bbd9b63f6276c848203c4448c8d302570a2238f1b4c6e7bfc0e1eaf4efc1dc271f1afee07b72232b3ff13a3db39cc700ed77783f43e746c1375f35152ef7349faeb76902ae4a5cd8f8871b89a8090600e5b3cb7060ea6ecca3a47a8dfc6f7bc02b4dedd17f430caa24ece79bc523af12394a6b3cfe663c4a227e64fad651033e97cb5c787433cee6c802ef569d453292e0ee46c5f8590f796380739c4c3bfe9261e1aeb0a4a63b73461723f5adf06c3d172d6e469f7e21706ef9691d02ed380024efedb8e896cda700c62d93dbd0c08a7a899fc84bc32a9e5b502d853e5126156f6b5c1d1d776a0a803050d3b7e29092311b5aab80067e78894b93a0c39cf9ceb846c410d8fce9b80968258a7aad287e30575992741a78a71c477c284d56ff0a7a092e7f00357442ee53dbd097626f5fe37630ac8f93ecc0e165e9dfe13c9beebb57c7acbe9605c13617d8de5c57371bb4a7a89cb1178c426c48501851d97c302b0c5284d2474ca880e3cedf802d431f8e501eb3d096bd39baf0f86299de7608170e025f395a48371692d88f3385831172107270aa6e4e7c7aa4b3fd59d195be24d82ad316e1bf15e319c118f7a680bfd4e7f08d1eade84e1e6ed239b9a07d78e2a318ec5b0b7169e17af6935640cc5a41b7357e477d5e9039924e10bf21fa8f44a8dc9b4da928b361f2e0080adada3ce02dabc76e61b7eda6205ad824c80718390de2754c85287ebe8da62042570411cc1c863abc9fd26c120aea4725ca0d3c9e673872f5f1f634c08bf80d3a60a28958feeaef259f5d35ad9b3c97eb4ca9b817207f68883e1f01810d6b5289813423bb81a9b1833e18454fe0e8a08b490fe2f57ad71b13796fbc8eb09128fb6420866253fe075bba071d8a6bd8aea15c44623a8d309a3603c1fd2ae52ebc0f60ef538f9f4d4646701b8f964ba80776681531c8eb1320b2f73746f3863e5c066fe27b61f0589bbd85be52ca6da7cd886366bc0dc2b97fd02b581d2af5faa76d58c2b6c35de007528755a3e85665dce4698f54259e3fb9a2066416a328f8db55f1b4db7d8b6ed4f45d128c33d58f2c34096d4c1e8ede406d99d50e04ca25f8c881051e35975471f36df5876827aaa91d7a572901a9d57ec18a36e3324f9ec617e64487c62e3f744610805184fe11265e608601e4a51bf8569f99ed660e6ee48a7beeead371dbff6f06b6a84d14be3eef834fec6a8fa272ae6ce621ad757b534da3b7404a4f0d4b258c207bf3fad8ee8fea7e9a9f80d2fe4cc00ce561663c700100ac37d87b39c02e12c4b35314b51ff89b5f9abb474bfbdc4c4151a77f2a046ebd73d9d97177c4484f49a39f53ae902582a00d87b4752ae30a3e3f46893d37eacb82f50c1c769a068d55030e23689475d360e9b4c5bd19619ace6c46b0e5a952778b0174a816da17f082decb571652bcfbafe9b3a86e85c6a36305a5f4fe86c2c4b942240f1bfcfe45e7e36ce703dfa94609e7c14e83af8d74d7e6f26ebb00f9d9d4a8e047181cec102a707580505de81275892092c97d1d6ed3e24464f61bf1289d663f807c8a5a0e8d401db0d693ac818417f8c5e7188497856535e344f085e3a51c08f0ba6f0280d9082c87cc911d4ae045a772b2034d2bb0e107ebf8134f2273c7997a6ff89da9f5aa809dfe27ccbac8c35847d3c1fe4d1445c0ce774e912cbf1b2c54f8cf39f4819142901fa54d6e906944a08c8b3da7fbc854208c9a045619026175cbc0e4ea27c8ab2f37de842f2dbd824ca6ac9dc87a8ff83cef67f55536e079021bf3998d2a64b7feb86c0167b943ec87d8c9d15f377664f9b32cc29f7701da0c342c1b75063d635db276fa3970b704ed7eec18465302e9578e61386bfcdd45a155d636d328b04d684baf6a792e0a471ff0ba234036cd997e6bb64f9cfdf3148f67bdda3ffb07c7d3812a156e74abf50dd0da243f0c920a33b9af24a1afc9bf4d47ea868a1efd9cd09c527aed1ca6b5de6f8be949641b47cb5de48761c2b673d6f6f823cd7d35ef19124673d534586ca572c69837876ba8ff8288a3aba59c35344732c8a4e5516a7f0d56d1e119299aded7a73c20162f16bde35d5904aedaa851fbb2176e23efb33d0f0c8472e0a89334740890e1cf892ee79f48ef30670628bc0cd4bf528bdda4ad5cd7f354fff227b50df83fdaded1d3d1f31719853182c5545c21091b02c6da0399d8bf62acfec65f37172649b45cb6a0859d427d3e7cc37b8785797d59613641fbf434a945b1a2f2cac771054f7f6133119e26e57a92a25dfa18aaa62ef224bfc128b1ef86a19b73153e614d35910cc65a53eecea098bb00fadf200c2279790e1352f53e99711832fcc56f5e71116c47d1862c4f85fcedcdfb5b9c03c9e9ab981935f70cfaf3493d541456f7bfc1aad535037f113b63e8e93fccc51577952c8f932f1a37c39e622c4cdbca5e1a1b44bf7f834a76fd121a553dda38152842b6d34f0098494a565d6a6538ddc85f3bdbab505e3ef83a8a23033d01a2868c50272d0f5c03a7f3bf5e0c8e0b11d3a84cac2bfbfdf4b2602c47208437ecb16c2161e3874085b9fe863341ef99c8f4d366f766ad9e2ec8750e7482201bf14e125f7bfe7f19cc602ac0b96a28255df40d41ae15b9f1596b99cec3bee65444ab69f76e299f1305d039672a8b17cb67e22c93fbd7ec83b828f150bdcf9f20a3777a98eebf3d449d6f75a58629fd1315830f0bd0f77f5bcef20bef126e1923a8880ebe89a7f74c0f5a49dd1cee881eabd2d16368075e58d2f4f00f72b0fb2e44420f87a53c0f4a71e3bd3061c9b3540bd1a781c8d63eb7d0c9f172ebaa06d355e94ba6fbd101ea60571db2f079d12723ac30600e14c7d6626affbe3d445289065b0e3e54ede1d4236350a73fa5c9c53929f2354fa9a5a307a94438f3a54f46b0073502bba972cdef1ddbfafb1ed7c05802e082df4530e0453494a6e83f0406f7fce48693f66332111f711842e88ab10dc0d731370b376e4a2376537cc63ee787d9c1b1ff0aedbd46595dc183c1b7263f237d3dc96140b8a84762fecb76ac20d66ab9069795b09bf66527b7bff4e6c57a67c43139745c7fc1dbec49211daf66906ef4355dccfba3f504b3bed1ed259a28f7f77fe19b361e3189ecfc2b06f732c4dac4f6233920004859968b8297ff5c7b79e30c4dff8ffe19228c78416c98e3502e4b209fec3933f67a3b09b5d87f6631c70aa7fecd673e39f6540b80ebd56d2afd95dc08174abed36d6e48fb8168b980b61ca91389f150e56ec749806f729edaa0cf1ec4d2d8cfeacb47a655407109a4ca2279b23b3ccd44dc2fe64028f90fd58045a7562e55d9299f8ae2014d67d1cf4728c021f444a22a4b99a41b7fea3d479a20fe6e46674b064de2c45ffac150bb20167dddeaf8e26fa675a4e207f993d7ab44df1150b1c66296cda640ab107525b9c1a06d4523df546b739c49e010e8138cb7402fb88e28effc9c95b34932fd5a9db0a25b07be551f9ed3776dc8317a3582ef659980ae4bee6ae1177742d25f14f16ec0ce0fcce83939ba545b21b892d3e612d1cb8b442d5d9ed802923e7fbe766f2a1c280f37f82602595d77cf0c17fe3085844fe609768883c360ea090a71300c50fde366702da3c37ce109e6bfad0b804db1d512d47334a29f390343b37e60823297f4f39ab989dc3e23406c13c6f2f0611e5ac4259d24629f106011402cbc05e043bc1df4c844295db83663d67e3cdd857dae13d878058af2d949e535236739cf609813f96ee44a76d6699f417167e032d21750b8d7f04b9160c3b9c851a6c82e24245230f6faf73db5d544a208620a3065a6d07744fec573b674d4911eb8facdfe4b6716d85c5640196bf230bac72c5fafad38b4f4ae7d50573924ee60ada2c0b8d6da3956835169bc8e2373b8c9ddf806567e9bb35d60e16a4931f722fa98175c46280b15f939d7f92041a5102d7a9487e913a33d0ce9b13b3aad59351ff5b0671f85f43b00757ffe77d14bcf4c04f284271366b8774a5eff78f9432b26fe9c9bb16510ed95b12ad0a5ac37039cbba2c2742e278123b4e5e40bbfd2459dfd986febc2025f93786e1ffc458e7b2a41e1f86b06dcc825a26249399f1d673459869907af74bdd6dcd48338bc841fd42648844370d3d42a3bf0dc16daa8f63b8a69f50d442e0db42031e189ccc9add1ec7f74427a2b5a8675e93f033d26715f9ada6269fb72a19098799f366f01e8b8d9e92c34b2a22d164f2aa0142d42ebeaedaa2d9aa61b249b1422326f32b8c60bf281d21988909bed50f7ba679e9899629b7e654b8a5df01ec0fd3b4a5a2a1aafb1d84714d450eb0285df9b42534f0fbdde1cff9f9768c2cbd0512f037c279ec7ff5b49f7cdc1e2a5f18cf7414a3050c0bad5c083e40baff231aeaa21219c170149c0581705927e8c6dc3bd1f256aad62c6c7cac1bc165d838d026db317d7c0861381e845f5388ae356e9482906b6ce778b3fc55eeb24809b92836c3ff94c28e7721b6bbbdc12a9606615e7c6fc3af4a206be3d87ee2a5da0685f41483aa1abe6aca8b4b922e14260433091f2d9f975b3c2302b9237327f73d43e1f92e9bb635ed51878863263882c8361b3846b926922884a81303e2196779d25843f65aeaadc1dbfb18e538e1b603c74f5fc37846f9e3a16a6344a7f9b931b06cd0f09a70aa3a2f12535c2df5cc59287720feb78d3056db023ae3bacad4142af3b8d831e163c0d8dca28449c17401c379a43f1dcc53188b82224211455341fae1b2ab4f2fa3ec8b13c4f2fa75900e39be7ec184496af2896168ea0ee74e9233744c84d0b1c4ce7b6368a917e3a3049006355611964c602d37a0f66e8c5a3abdaea91fc6573146317740ddcc0ccc9a86a8b46bb83fe0fc7a044c9326baf7f5e12965c6b011a803fa98f0c8486bb8274cace633ce7815513c795caab227f0f6821e62d77beb040efbcd56e1017fae03a54f1069a70088b669f7b0c8df204025bc268794c6ee85bea354602cd05ac51323b921e0ec2c5d5665c0dbe59206fa506017c5a1a0a258af6957e155b10b8646fe53f21cde101d421acfe89f4e65058c2fc6bf2b368d07ef8f3d63b18704379372b625e96cd0cc7e8b7b36ac1aab4cd01a62bca05b9c35e6585bd2dfcc6ad2fc62a0e1ee6421632f448876faafad10d2e1197ffb9475dc3e36634f6de485737a4f39863dbb922ab14e71180725f402cd63a9d5aa6bb59c596bda93a835ae47595dd7994b32df18a25ace7dc14d2633b46162e4855d0eeab629e781f8aee820d02db24f41f72d8eb16532b675279bf4665dbb4068c33ae4fcc9ef76b1986570f9afaa5525d60fad92851c83119ec3aa450a07ae8dd86aafd2d7d4db8947c2c61b2b421b9b17700843296de0acbeff6eeb1857c3410e8bc4b89288c39409062df18ea4f9bfcf3b598d9dbade69b8d743090e346f2b629737af6a9e78fca2307e6d06011f02219078b4b16b397b97bfe5ed963a0685ace416c5612de699f1c2a50602cbce8c91f60cdf20886d253bf95f9e558b1801ed1cae9385208bb1dd6978e4e70b0d38d3c6563ffe0e40f2f22d46e87c12b22a7cd95f7ec9daf33a4a3739550e5e8b8855bae53f45f7ee589b2f24d8679796170cb7288395e42fe6c36fdeef3aa8d12571a0676c379ed200", 0x2000, &(0x7f0000000880)={0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, &(0x7f0000000580)={0x90}, 0x0, 0x0, 0x0, 0x0}) mkdir(&(0x7f0000000000)='./file0/../file0/file0\x00', 0x0) syz_fuse_handle_req(r0, &(0x7f0000004280)="b936b4f16ee763f4059aee2fdb5a611d772b6ca56d1b682def8868e738e366b3dd31e77c3f1dcd68f992fbbffe08c6f7a73f5ad6a628b7e0ae8d394fcfa2c9d8d7c9f9a984436a9c8e4352aef9043eb3dc0305333952b6294f017c27128d53aaa584307ccd72cf441276bbfa2a7b371ea257145040cdfe1cafba2f5c03a4ff75b97f377a2cd0c4101a6ad7ae3401866cd97ff78a494bf6f1f144c71f71de83bb7551f1224670694ac03ec30444c1e75a44cb6002263ad2e783522d62044131d2ba7969060ca9b2708c3ac9eeac6d58afce6b544476e9dd3aaabe36a94004bf5ed6ff1b3ee145b971abcd1192dbab3bbb319e8e0680c9bab76e7f8aa8c0f2944e918cfc260020669f20159c113d09d38d90d9087f7ae98d37b9348cf5b8541578715847b6a233d0e8cb12f2cf01d2f8290885ab88f6fd9c72838ac112e63daf77c403447b03329b1f120e910b7b2de6144fc3ae906f5db93669c8c741af3ac4f71e2f952277e59b2b57700197fcdb38116b1aac162b5a50390718b4a4975fa27505915c82ded9afa4ba2f7b0571df5e234f6785f6a5c4f4260b25ee6008588958fa626861703cbf055b1fc3b767ec39b6b2b9e73a53510f753e459a59568fe5013d43dd81f6f3a062eec2e43cdad3e7225d9da12a149df37b2d137b5d85a0c86feb46ff6343ca1133e119b94f080f5127bbb073f8e84667302acacd7cb4ec6e46daebce766f3bb1d61e70cc45ea0c2815c4004432bc57ba12dc563f8488d3f9864b9ab15fdbbdae34f7357e91f5445b01acb2df8e20b10189b232d65cd2a2e6e52d6c4d3924663b83d4ed226cc4ff9a6b41650bd5eff2020c8f72c9549ebacd9f4b03b51d77d252bfd158f7a39c11583b238ad4023ee0128ab3c0583a7b638e15435397eb34f9c24acb03d8b3ad5e5749b45f6803ab96b95d32f37e4aa83bb735ec49110a3a106182695ed4e865470b655b0095a2b427650f07d847d544bb96de3be335b4ac229521ecfa3fc4d58dad885952931e4ff50f4f1d1d1ee8e1da49a0a19518cdfbd9ae0de604c1af5f0b0ca2efe3d148af3abb0278a8382a2d8ccbc678add3b9685291286feece123d9b47b3113aeef4b0422235284bd2d1861bdfe38f2d0750db6ec7474ca545ecf2e182c7f29fdf2749b9f759f32edebf96b4a33100c8f1c1d4d922ad56c4c4b1070e5d1884bb72ce03df1daa025e96e35f594d2bf73d8b0cf5559223212b83065e71475d7954833006050a0cf35d4eb0f7b189c9936a4177360fc8de9da68f5a0d748c979beedb8ee9d16b46d48c16bef05dd51b4df9db6c3546b5cc6bc3fff9788f4f07f99bd98068f347cb4a31a08323293e2994f0220d875052bd80086f44b07ccc02f9e8f9610ffd5b9d3aa19ed6247702b21ab6d472f8fe99c97f98238fc73ffe9908278bbe92efffb933d565c907e8640604584442846e3f17223b5f9f1766437d7f60e7260a78c8cf6d094825a1229d84f6efbce4e751a511f70d88ada46e3e3c8130571ceecee9f45ac802cb8cba506e0ef10322f25aecd972ac7de6cfe7db5fe274c0da083c0a4d772440789e765438045231e209b5b53b1acea480f0876e112c3c6f4863b0676e7a60b00cd957f893f82ab35fedb539024272ee43f552b3357c73f9612838987b10730262fcf359ba03e827fff425544034f7f9dabd8bc8168058ceca5e3852443e35179db4452e9b0bafb85153bab2182342d43d947b6562b469f360ee9ada067ed843eba73f920f5590d42e5bd24727a012544c347cc0b71182b98008b25ccbbdfde3cccb7f75eae21931c5cff372691807beca11124ebf069afaf969ea7e46ef6a10a45aae457f60b5149449a099b4c9adce1db24eabf7d7890e0bd9f7a1c22e15f56a87ed0fe0d299fe52f59cdcd0f91b7762d7985c4051df3ab25cad5d6582abd7ab739aae540db52d292d9964793b46367d14e6296672f346e2252beadd87ed9f2b9ccf6bfd3f338d4bb62bf7b413c04ca2ed5c1eeb32d752fc19e50e2c30203184f79984b4fd6d35ce3b4ae5ef3fd4250a705a0cdd7576b62bdf11cf579fcada58330bb6c0530c65c41ff05c7370c23b760ffba3a7ef8fdfbf575dc7a67571f3cbee1e45f8cdf5e02a70b67978ad0d33505f33d62efe301ebe00c7181bb3b6d145a90a970db0edeeeec7be7ec88ebcf75b5b1a866f86bc9a99b916bebd9ab88be1f3503ce3b029a78249bca8fe4f5faec12127b03e675a172492a53dd4556884f394b501c5adabfc060a73c1205a52a5bda9868617075e589042f4560fa55ee57f4a3b9f60989622be219cc57fa0e24bee12b6182db5f5dc38a1f569d283836bd8a0b26b1f562ed72e33ca3de2ea109b4499da0cec2e964f7b1aa020517c168bd85d3ecb2cdc36fa445706be81d9ae07006bd3f86728be483d0a45975c147f4dc480c5921130a659bfe0954dea25434bcbe0a11ce3fcc354c874875ed6d421ce14cd078e9cd1a3eecc74915f091863b5e91ea253c16cc7570962093289ebaf6f2f44b8edd917253012e455074c12ad908fd0722017667eb74c271903bdfda65aaba18ab6921e3e0eed546c2ee2006ef6205d59b2f04da48a951d24c326d7924a5500b33706cf3c8972f6d9ccdee7a9b4b96f556c1347662c05b8663e7f1e3d1e703c1f71693138242783b55e6e176328f69299faa5fa93908ba99fe3b4e9b186a59c573579e3ca8926d93ba9337f51a01e274ba942a9643ab126d58c6bf7e07a2332a8bbde862ce94517f670196df4786270ba7e1c0c17e957f2b46b402cb0597a9b1928051d56e875d76fbed3a34afc62aaa92c050577897eebca73d4d8c56ee79a4b9f5b178a0e0af46b3c729620c4bc70ebf2c173249f08b182be902a4ae8ad82a356512fa195925447f8715e11bae08a51966350ce501024b3aca616ed05c49a87327423cb42d73d838d747f381c69a74531a521fdfd664b1c13a353f43ae43ea2527fe62dcefa4c979c70340ae3a989d6e23537edfb893a0ef58094b8ef5dc306631c003655f3c3362fcd3b15997a8bc38ef726cbd2de3d4273f827a3451c46ce7cabcea216d948529e32149873a7cd4d969dd3faee1bcb170ffe9b034535d4281156eea56a4424e8f6e6be9d9e24a9b9bfc23cdebd2c3a6d0615785374c39d101b17b32ed60af3b7330c23779e6b31b347ddfafa8e896a414141560f229d1416c88234dda6bd4828ac5de5730a07c2a737cdf2670528aa15bdb98822f922fa3c18cff86d68f60e6f04973f314b54807b0a7e1077df9fd8eca40cf0acd53aa61d63c709a98d31a5719ed2e962b8e666b76a2f377794b65f9b5a61964e4de97135e1034910ca72f7ab262b0709dd58869264be463d3730037e20881fa33a276277b0f95b6800dfde415a082d2547c0d0e31eca9bb7827d0dc6f32c7396c13a044156ad3635b8274a6b2473661dc3a375f9bfc94f583834fd0b7875c55eed735b045365da5d6de4f598f5f7a84fbcb58b413c58bd1aab22aa63671424dd0ddb431a22f0fb600541e298db1d79a14a065c98b516ab43ba7faad66c1dbea91d3bc3672d2ba7842068c51374c093f72d49e8bd5872e76e8ecd92d494a43e60963caf7d85befadcac1c1f1b2f2aad00846adc795925e7e1c55bab79b0304799ace66ea88127d4f8edb70e96bf4757ed0e80e4d222683f932779fb1846769858495331051382b9468289219b0df1825a0abed563f75527e8187bf4b53c5076f0b660fbdce49460dcd08b78fcf07f99d984c478f9da01c7ab7824928be871f633e9e24702574196dd8fbf009a3b726590ff688036e777aa339b04445e0f7868a0020245c879a6f71d5284cb9a7bac80a808764a3d398a53d5e7a7f2ea1889af97ad7fbbee5e3c8f130e6e59da30a32abe57999ed21149bcce3e4383559003c1bfbe91d5d84384b8c11d02d1480980b63150ea885a05012695a0ec7fd5120fc4d92d0272fa14461851b3b3b588bb5342dc843ff56f40c29cb709e68a2530a77e22c4217af7900c53bdecb812df85d3a7e605de9ab6867c21638257f850d816567a8a2397ad555745e55070a2a8762ceaa25f0cfa69d205e9bf6f2c9edf5495137b7d04faee33efc390df26ebf94c7b82c14437dc055bf40b407ca9781c08e02c6f142ae2dbc1e4aa55dd1e96315ed1d3ae194f99b2328fb92b94ee5b5afcd1c0b37a709e613a308774a692af6a8a178145f98895aa86c0e42e4e5603ec229b50bbd06aedfa3695f253b4c6e94df246aef7577e63dab8f9f411901b354c07a439ebf85cdbf57f477e75f589afa7c9f7208462338a95a292ddf0f61b0e4abecfdea3a4acefdbc0df5e937a958474ccba5f818eb843ae52d161c3745d171c9ce0304fb7c85a18603b23a1f9eb7f6643aa48c82820b92f0d3c500e3d968f7ffc437dc521c946c7e12d0041cb476a6c116c0e84c473e0ef1f3dc5d4b2e245374db58c80de0f8a8027cde295dc8f47cd0a029697e5597e53131ad188ec8ba09b2994152fa7b2e05d2d30edf9f78a40376360ce3bf0f8fd04430077d2ced937dca8f62a1d024b54ac34ecd63bb4b689684c7f2bcb7150d496b66119a0f09b47ebba000737a6f465793ee79cb4bac652f36bbc75d4804964c8fcfd406b774751d1bfe87998d99f80bb1c4ed783d190b670bf6c3539547893c26c2a7b1a793ae8be1f31982287a8fc033b99b03075c1b589f73f78e61aeee9296613b4453b6c809dfe7c520d014aa7a1ebe2e46f31cd3847bfc79e88e9569a6b611c0962e57c401069046a0659fef9fdb4c6fe6e110edf99ffb275ceafa9234bc807c3a02e4b1c7d7cd5453b86376df436378e7887676b008a8f9110c0d37fca42c484eb7c66b4787588245ab95f510f6067d7bd41ff6a256fd17b1a0e426966d94f937050efdb184ebadb595e87a5535b89e5c7437181ae089298892afcb527b21eab46685395defe5ffba8cf6b3e08857af2f9c6db9494673dc14c6f82fac16e4a27185d32e25bd4982c89ff622425aca6531e8a0d78afa3939793e77352b34bd5796b722debb341801fb0a9f3dacdf3f49f21ac28a472d6a17691ab1c5382c41fc8fe8679add82547fa485108e920be5866690b24ba73e4ac73aa8b64245f9be0f4748a671a3fecf9b297e5c44b19b3e092ffec942409078a89cc3ae4939b8f91b7f4891f599e68de56197a9e85e42a279b3d36b3bfe937dc56d3f4c9e5c0c697fa03d69e8408e1bbdf49d81aece00565657ed6fcccf723be514d7b728f5f4bb1761454d07e6769ec969de454094a94da915fb8bb5cec855c3e9fcd3e77c590215d98aa88a9cf6394127799b47dddf494b387d5b0209fe195f6e0024ebf52225602df846777bd297c6c69ff4fdf28f15b431ea39d6a46bba3d31d82fc666826247922f7c1ea20a6cdb19adf3c1f879f21112e21fc9637326d4b91007e89912f0d958fbcf4135f72ddd81d861196916a60d483c4d86c19959a1c7a92b6d0e51effc4deb05df57a5c5e444d490c2040ae7263c50540d7d9ac213207107887b8432ffb0b39d453443aa0ac107536e8cf353fc12db53fa950dde1c5700864c8ebf7df6cd6aab650be658ae9581d9b6bd1a2ab072cd10fe644cf7f43c8a072854dfd0fc84bfb170c35fc8dc4ab4c746f4326491f8723336a7e19debb4646089fd252577bbfabd538d8c1ca98c4d63b33adfc1f9ae5001589335ef5a5d24b197ebfa1798030ed8928962706f0af40545d1fb9fa1343deee8ce78fa4977aab68b5b97785cb940e7eb6b80096fc31a5284fc2f10becbd93786ff3b33f57db979464d2a54b677981b6db95962d161bfd3f860f0b22075c6a50897a9c342a479f81d204dc917832b5a73341b1c1241bdcb6dc7d8c711d4eec290d980df3f12cc09cc06b1528ddd6f3f1f41859cbd1dcfbea457bace251a834dd4629e5b132582dc8b9aceefe3e48a66217ce98d72a1778f18486445e4878fb6529346bd83475bc42fb06b196209293eb4ed23d8217298deb8c392e8f0eb4df1f2014bf855aff8fe010ffd5dd3da8a77dd1d25c70f835e5cceccaf9ed95b1726abe70b4189e8c8ebcfbfa45f7227184841e6aef3e3e7eec37f9832507f7572cba814c5478546b22cfb3a8d0300f68145c55f6d425417bceb5b24a9408e4844f6a6a3c143f36ca701ceddfe44fa496453c48d288c5b6f08f1471586659d23c29a255bc2a8d0e1869bc91a9650d018bc3e20eb2f7089e29977faac46020b01cd01fedefe484dfa617431f02a106931410d64ab365bf8ed068e0235f8d2757fed289282686a55dd15a847b758842710d9c483cb907beceb86ac35a240dc3810320137cad68b451bccd49d7a285083df9d5f0df8592b0267e82dd82aa78155c26d26bc4faf4708927a114a3d069299a488932635bb46c96cf3678af463f960af3e750cdaeb322e10099adb7e3a966c43f68c32923fa9e70bc28f98d9ea54d24f3806ac9edea3206def17285f693ed52f26e39ef7dd91924a0e09213d9f2efb7339b7edb6fd58f6b88836d8804a20fc88f5988432c06ac030d05a4caeafe7f34a4acce70a6c82d98010a0dd412d2e789c0c652387dc31b3c4f6dc6dc4ba37951df7a4fc99d578e834a914d3921492cb4be9a87d7ee86e1b684cf6705110e8ec3278d7fc9fdf2bd9a2565cdb2c8abf4a0d8b5ad1ebf549cc05a11e09487978f9edc5e26c3d9ee31066e3a3dc836b585f537aa54542d6e8ccf2d72a9c66314a2572923e289ed7984dce71a424898d356eb4f17c7841ec6c54c8511e78f50b2bad1ce26cf5c490de6c5c397f0249d457ddeb155ff1f6685dd3959f21e33fc42f2debfa491f894fc2e132dfe23003e35c6dfb8decf3d066f025b94ca7dacb385a2a231128f4daf033418b380f191e8b730985fb06d5138e0cec450546f3782f237c13afa17f8f744a53992c9019e10e221f0b829ca395fe407ac85380391f91aca3eb67a489e8df617865f1f206fad7bb3e2653cd0469dc3990951004497cd2a2eb0042904c3ec2dbcab26a0bc46ea60b2240863d55252c3a8ae2939d62519217e31ca7b0b6a494c63b52a16a289fa94981b61be6dd9bae18c5b9dede401285766a1c556984339b24d33e77092ac686aa7b76700bed940ee0ac42397a6098d5c189324c86e1763896307dc9f2f87f2143260c680ffc5d2ac871ad79a07a3cac1b80580ecb4b084178a4422ac960a80ce795492ecb223a3c93176f929fda86e4d15dd20ea2b6476eb021c99034f2c2f37d07fc22380af7e1c045ac1cf5efe0c53e1e8b67729fd243af295b561618c579f445d06157123f2b72492ebe69df8bdfa24e76cbcadf06ac578a61ab767f132fa619d33e67de3173f1c2c2f218cbf884939dcf2be098c6c30c99931c9b0ca6ba745699557d1d7d47c1a7f5baab8360ee9f801ab3ef81cb4882d6489b322f0f3ee2d74e57795b1880b304865d6edea26064a540c253c4c2e86c91a68d2024e76a4baf72dce44e7ca6b88ac462dba127b064dca5f030a6bf7ff42a6857da8879e14f4a831002794da3c78950d4ada6c4f29cab756fd2b541aff1b14ea040db16a2ed55b5caa0f973971910f200ac7d85319a1cf3fe20379a7c28ff7c37e3be538bf00cfafef11fbc0bff8e9e15d9b3f51cd7d4e5e73797fcfe4a2e2941ac27d310896d4c7751bbbf5b83621a9e260858c96d50a3cbff44060f92726ee7fb01ba4717fc78a9ecf3c3d1ac9acbfce3858821bb191359297eb344f1febf18076fcf70a3c709e2cb9208464756fd2c393b1687b89675a4d809b113361222be0e3bbc80703c23f62b940bb417e44eae9d24360a06ae0564bb365f725cec952b7d63181f3307904104e410f1bb386c58e72bf9560056c1b363219391c2f315a6f6790389428cbfb297e15d6404ca65baf944b1198a98cc392bf946e941e04f0aa38be6d788030591b54c49753b16948d2759f5dd3987c12c3aa7d2d281d996466d2057b28d8cb24fdbb4367b287b38e6988c942505224971d06748523c7d48811e58e54832e43cf5e394b2c56ff797d9cbe8c3eea0d16c07c269fd380fc59ce40ede15305ea67f6efe2980a92702050ec281f69b94ea0b2b5024527403663b00efa6790539b74b4b542150739a9e0ba507e834fd9f3f2e8c82add5a77fa2ad13450ea51add9907ccb71735336c64c08c9d9a1b5edef707fec52240533e899fc51da053dc13d9dc7d42ecaa51452fdebdf775f7bbbd022370d9cbb71d9b4e44f7658dd67dbc99ac3ed0e0695549c8bdc12a6757a3096d40af346339e03a4d6597da087393f0c8f045943479f9edd83dbdd955ec5b8cc8c559668834a616d1a3b4b20eb4418cac54b57ab75e9b6d564c61e784d0cc8f238ce2f69b243aa580c3037f126de36f88325beb2e0b1fdb9d41f627d34b71e3b8541fab2534a476bea7d8a4e28ba13456ac0d0135f11648f1d63951840faf5d52949f9688a5b9a89339f8bd161de6989fe8fc3b1c305202918c04c4e4b350da1f9e72d3511faa91c3efb7ccdaf8ce5adba6803831f959198a30d31b9dc8026b71650700cd16d7b5cb4ccb8e47d1235b4790f4e29903fcfe0a76734aa5d20ef5373305fbf6319c5ff447e62db6f6ab72c6e4ff12d211fe74987a8e227c159f04223e844891f3af776c86cbfce6f7d7ef2d536c33301751d488fbf2bc10028a32063dab7bf3b6d6e682f3bb20f1752f532d09da4d7789ffee733a8ae0bb64b4984e6fb7d70e49219e72fd42dafb1e23594ee624d453ff39050b4bbc58303be87c3bc15e5532175d002a97f5721ebac384e95a096be49a6fcb1b4bcf229acfb5290582e6b4e41882efdf484359b9469d2c0f927043dcf3ce24d189d275413b2318e211c963836e7ccf5b129a5daa2cf6451715721796268f92299dab9080c999afc6e378ea357a092ea67e4fb120de26a8dad0532081663dd9bada0f5d84d3761d5662f119451d0753290b6629c3ab1bc6307297374c79cc3a6ba94fce62b485daa14377ace889919121abbf8cc786e3281beef59b8dc5600447e924560845c6dee71c289e839345db644e19a31fec26641e7370982654fbf6c540eb2118ad223186ade395f495254e237a9018c729115e348d30a8406392fa4c3427ba329e178099ee2a881e3439866aa325c4dbd42cb17c715592df3bf5254dd8714b6e6a479c4a42b091a09ab1416ed00ddde6dc4c618dbafd9e037f75d93c312fd83a75c5b0b8f2990b7807995ee7e4f8f4d324aaab4b4e0ce76ea33a0a01414a7da91c00ae9926b0974c3a9d4e4a02329e2c31fdf04bc3e4aeeb5bb30b04dfcfd3b0d02b894d7a76dbd63b1ec113a387256b6b7c05f652ae0d59971fa8ef3dc04aed14853b54b355f846f70b802a23662ac7211f6181318ba9a641932bd204c75d54d9f2649d12efc2b2657b3b5113776c272b911e7fdc0ec19270915051e798cf852ee15d97146f76c9c2a4f03eab7ea217b42fe92685b0c5b7e309bdb8a19d1c3e563d339cc8d5c29bffdaff7108310ea20a7d44e406216aaf6008c2826d6f35c7560632ef27fd4949a6128818f90962b09dcd74a61480281b9079248bf9b0b9329b648ac145920be7351df8d67f1c1ae65dcf14a6ddc6ed0aa10ca4aaa43d2920cba0d67ca9933efebba364a206c369387c90f9f8a292a531ac05b89a0924dd5de15af3833278c8b76e4b82434839891a4e0c3b1bbdce43dfa45fe04af628c8608e845e27bfb6217bc6667abb799b7a67d3699c40d6caec1ed689352dd5c3f6e460d0d644fa1bc113af70399a11b5f83b7b82cd34e0437138e04f36056060fc4f9d48f77160f553dea9d3ba5bb8115c7a90e521c03e4bbbe0960d10998e79d1569d9ec13c9e22a94f49743b59782e6493218e491292545397fc0422e8955e395478d964611c94a50df54b7d109c107f21edba24b66fc0139e45ace7d9041a221fe2df541289ba84cd30deac9f1c0277d253f9a917f1edd27f7a2f5a3d0e294eb90dee68f2d165e51144377757c07918fd5d8d2d47c23c626af3d0e14d134231d37018eb4ca934334fe2fd748897d71bb99a42d8be70c08c483d4777c3731063fee00eb53db4c9365b78f347c543eafbfd0b39cf9c24a724c4a5d077cc05f744867871f2c3016e0726bc24c3375063e028e2611caa29a9071cd6aa751969e576c866f4c047bbcc29ac47b152e98c95dc67bba33f4a2f7e5eeafe42b2e82bf30e70ffdc39d5262692a2fc2627340fb930f2660f1002b847c8eae265463020c5733e85861b6c025506b90327553660018564e58749406fde37259f459d64a95b959e033b514925d699e64335eb8347a621d63fdbf5e9d35f7267d6fe974e3c3840de0f879661edc479c24a7990526e0ccb593642c26f143c05452a06b9d4b706306f03807c45351b86188d8bf9da468602cfa0e4bf0fdcd15fd3b917796e494119a72e25041e408ca7b156262de6ef9df6c1cdf4b582f491d3e7681d9dfc027d1bc79de1b6793f63a5e0781a727e8f7f2fb127727a9555b6afb33c64bedc6c3db1c183d5e45f22f250755868fdbd42e2ffb4c492107e060f9bce0c280c490254f66aec19daff0040ea1551790e3c73966ad1da8c1d00a01235793c2143fcf7f69d91c34c441a1e796b786b2bff67e618f0fec152cb0bbf739df708492cc5976c5122aded08ba35c3bce1095991557605c63673250b8f94d1b72fe353cf69fd190ccf650108941c7c9ebbec02580f7ca0db626c58aa28c6415c75c66d6235b0975144329aa3def3c949fa90972755f526282e293836dc1558b9cbb56554fde46895e59ef50748ca51ae90b265b69570b1136da0c73d05fc22fc21e0b0532c003e46f4a026e786e8e9b3181edf656e651b7a6954bb2978b5a1dea9c1595795c0c142afda12cf23d998f692a0a0fd46b377e74c145c94651faf3a8dccc03c60ddb6e1dfc379cfc5473c5b04c143fd50240e4201a4bbb5ff9625159ff5c9351423b82ce353dd5f1e7eb738e19e0f68a460e81f7ff2efe67db325963212d035694d5ce157f381aa76c7d92fd5b85b22b95b73c40cd5dd37282884bebb23bc31cd587476c602bd0a31a62784a3461a97cf233e1b72de8503c0dbd5678121323278d4ffdf60e877c4bc8ddd0a6fad2ba3c23735fc46cb7bdb13bd3afed9303e0bc0a19ac43b697a715ca2af3f0cf190f89ca4164ed5b194eeda983cc9758f49b3f2cdb19f22f537391aca75e5469b7112b138db877d4772960bc2fe2edd2ed8b42c64a58a7df9c1006e943bba5c25bb339e1bc380e38489129bf5396cbfba1a0f3687cd2f0561187ad4e1c76090a3eaa71bfed488afd4790cc4671b23b3226f400fcd4fc5efe35b24e5634c059daa7837c48343794465ce62a4c52e7a75564cebc4d212b9a355e74f0970039aee9b009d884c4d11b5fa140fa07663972c0db4a4350e51eea026a0dc377912aa002431f8b553b35641522fcdba43eba0c0d49a178fc5b0cfdebf129f224a474dc2ad209a2891d5fe90c3a38374301bc402a8d9f13b2e88589a23d43610d76a1bf832d18381c677d1475074fa063e500", 0x2000, &(0x7f0000000e80)={0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, &(0x7f0000000a40)={0x90, 0x0, 0x0, {0x5, 0x0, 0x0, 0x400000000000, 0x0, 0x0, {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x4000}}}, 0x0, 0x0, 0x0, 0x0}) 07:24:07 executing program 4: mkdir(&(0x7f0000000400)='./file0\x00', 0x0) r0 = openat$fuse(0xffffffffffffff9c, &(0x7f0000002080), 0x42, 0x0) mount$fuse(0x0, &(0x7f00000020c0)='./file0\x00', &(0x7f0000002100), 0x0, &(0x7f0000002140)=ANY=[@ANYBLOB='fd=', @ANYRESHEX=r0, @ANYBLOB=',rootmode=0000000000000000040000,user_id=', @ANYRESDEC=0x0, @ANYBLOB=',group_id=', @ANYRESDEC=0x0]) read$FUSE(r0, &(0x7f00000021c0)={0x2020, 0x0, 0x0}, 0x2020) write$FUSE_INIT(r0, &(0x7f0000004200)={0x50, 0x0, r1}, 0x50) syz_fuse_handle_req(r0, &(0x7f000000a680)="f2dc9578c61994cf938a7621ac049a6d63cea9535d30d26edbb299ce0df1caaa2d572e7e3f138b32748824c179e9069a074599f8c5142a6b07bd3e7ce9f5f5730cc35d00260c16aea6d183cfab504764e7a6b5ca82062a069826c6a0dd415f723d11e7ad580efce4718e67ef24c2b058a5d5bcfac5d10b96cc5f30ae1e55ac6743858264d5e83bfc6251d690a684153599ce666fadd8124bd6e9552ce6803d3ec3db5c49c36aec21a2f8e83c270a34f4c8fc5bc0aa9bb27990d3d7d7377ccaf59431a50d729cfea9a95192edd372dc611197497d92e42c0ba8e55d60e0945344cacf86e4f5a06bb68d15da7bfd091340eb87c66395930dc8528e1898f6c7231cacf11bf35b0b45373e7b7e81c91842216477966f66f43db170e8b5df42312208748d394c7da23b366ab71a87c6f966ac6b768347dcadd2c876f24bc4c7edf7c792e6a5a154fe0f0699296ed5f66e614f06a7e0814bccdf19b69e1b8694673528768065b3347d9a6dc3bbab2390e3e5f3bdd93cba7d7e3180548091c4d18ff32f598f94a9c569c352568e5e577ccc792e58044457d1bfabd4d569106252bf9f7f389f82fde530468d5c79cd4f1b37dc7f371c31fba401f5643a3922e6fad6d063d590d736ed522ce3b1fa0520727a0b5ea72825e3969584266415a676017b3ab22062acff919b6d2b67dd1fce30af908a95fe9d221b0a7c06b8b51bd7de1748f3f446df7edbbe1df499cb1fb7bffabf9e3382923ec67e5b7fa8d2cf40553e26ec112272858e08919d5ae4e40a88adb207de714a1631a748c028c867db0553938680904875597c15094be7c7f2537efb0581217b9485a6538cfa10afd888a822532c9c1fa69adf9c73a42cbfc88b2fd499f61fd3c2e306ec76205d8ab8155b8e124aec587bcd09b1a60978410baed82afa74f28859bdf0d4ca0f950b474d723f85f1b6056b63e86d52a65838bcb29a238725ed6a05041037dfb32319ab917aa91a911fca8a0aa0e567f3a12947a8ab2f7639928b9d0868e8f842e1a923751fe24fe42a8dfbccd291e6773aa64cfa17b1d38087d259d8a4e64314bc0a054e6eed5466f247618d082b1effa1f242e2120c11f04f068a198d38adc770a356338af053cfd99005dbc42804d13bc0a2b2329f37845a9f056aba133a82b844c59fdbf17cd765563fb79d5ed6d5034365e519947f0d47f3dd0867446898637fbdba769ba8f69d15d79fcadd9207789179f0cbca87cac20c859bd8910c5b590b02f9ad384827306c51651e3d562d3ae450b27b07f989ce333429a0d12898553c08f8a5a0bde11a93dd58ccf66ef37d6b02b5afc1462dd1375037420123f0c1dfcc23e8c29a078ba09e829e7efa9a5e47a98f776d67f4cdd948083b213ae88565fbd69cda8806cd3b5006cbba3f87a13925f0ee4d3b5428825fba78a6664f889df80c9997ea730385b88a1f3142bce20c253c2bed257097eeeb63836c65582187ec19b376e1a2c786f4dc4571e9a8cd9015d13fe8987cf5bc269a5fea8c1a77b1c11dede4c09a315a31a0d7e67a17a28675742f66867b7588714a33a4168bf1da227c2d0c88c6edc5cf9c265bdd34b71b3fb87a14ce2a89dbdc56fa4a8664d6b9e7b717b8dcaa3d489a8d2c75ebf03f6493afabb516ba71479ef8aedf651f9515eaa44601888ad2438db03eaa1c0f5f479087f3aa22df5dae1984ab59f17ea356f4abd802eee24c78d230d3b5a54faf896bfcf881b9badb4e84a56f159e5725165c041d89b8534c48a751bae12bb2299013d301964e7b8f27f941db96c9d592e886972f733ff15994e54727ca4cbf884450933020bdd8dd0889c8c1ffe566d58d9e9fe6467f453b21f88c49eb6007816830974829b0732d648e5dc53eb4cb51f10634b48fcdc20af089f92c4662c6c0c4abd9cfc165476d8a33d5861bfa3722a7d4e36283cc79c2d715797651a3b77d34bd34893ffcd8cc78df5dd4d4234ed70e4fc9a8cee4a7bb8eb7a07eff1cc225786c19564e3d374943b254a166f8a43504036fa0288c7b10b1ff3b5684b46863fafa0338c50fcf7daf4cf5f5a742808f1d0207229ba0bff4344ee4613d606a101c47c07560cdb0efd213aac2e010fe5bb183193541a8ea262cb3a3e2c543d93c76c9d80c1713868681724822e27a80ef3289b874be77680f6c7fc6384a8a4740959e365976a01029a9cb27484aba0e9f55683856ca2848797c8b2846bc9a43ad7f1d150d4d3b4c1e832a34ad83d3e56d7c3fcc71d02f7daf7e6b5a1704c5550577e1f482efe3f5446aaa019f9396ea63b9d14570ba3468cc25145307c9d7dd4447e400d087f46467ae3a98e6dcaac53f6a4d71ab6ae1c45ec15424cebe7cf1dfecdf8fb2404bda64e229178b0b199474e79659fe16e96e927be38a3a1b7d9a2aaa7933d627a3010482fc32e06d10a6438577280fc08bfd954d4c7251d3dbf99bced67c1cf1c6299bd08b492ee8a23723f7d45e78520a0bf889603f20add15063ef612ece4bfc1a31c425628248e4d8ee261a0fda95a1e5ca1432b0f23ff2dac77fb97c62969ed41728f02a1f2ac92d9d344076384758ed89fbda9fdded9a6a980a5161b90f840397fd21fa3de514bf5a09843a9fc5a08895c6d5e416d836fc76804f4163c04cbea5a9bf46f1e1da583e8c0e1168c1e13c8a2ab1d1ccec531e2fb44c01652d92127156eed652ec30ad6be2e7ca4650cd3085603a848447e32b2e7001959a5bde0e28ed1e1962838acde3e521931e7f0355caeddb565dedd2da5920c0661a645e56f9c5506aa53552a042ff8ddcb6a3a166d819fc728483258eda01ba00680c99587574aa20467421b208ea987e4a009981b752710a484babc7b090112aadb589534eabde01a518520655665e02575ac70ccc31007ce737b148d3e92a52d4ea651f951609275734bf82f8c987db1803559209660c52678094d94ae4f4b6d706f847c09ca69c7fedecf51c1b2386a362faaa2f4ba004bf80be503523e29152b24c2709070ef8c79059252eff39c300da295b2a246ff8907b281aedddc2688709d20ae65551f91c86fbf37398eca2cb8d760b8ffc7f3592ed30dd2c88f8f518819cecb4b094e808572d50a76d3d7365cad98e8c9348361e28d98f44c5daa382017548bf75ef7be9f4d836932a6530204fcd2b7b0e1958347c1396e827ff5e63ab07081413b2e34e2e4964f82772656b49d0f81ac99879dec266019fe7794abf95dafd63e069fc1662df1fae47e90f4196241bcf3235181d23b37cb0ce9a352afa5ccc8fc863e1e9f7ddf5cd4b123a1360e7fa6ce1885afa332e5b50ce46a3cdde2cf16395af3b3b0ab8b8d01e436d08e112f1d121dbc64a503e50e47d4af2d29f7c2c6f55ad224da459ad765033bc26f398173c3bb80137ba6a21a5e87c9c5a9eaf41831b4f8f225aa9c64f2e54fab0e0f75b06c0f42fe7b6f193fdc5f9a6b24f910d08b1f6bd1aa6ac8ae7b0c397bbb80931b28995aac03e53a3d1f7afa034b1887e374cda3917f880171b53d64364633eff727147bb673d1208eae02bcb5eb2623e826ae46c4464297e79d0f146ae31dc8d684e97362a325a77d4fabc0dc14a58f9e538e3fbfc689049e7c07b98c9c2eba5eb3e37c7eae83c38406eae03749fec1de11f9dda4e6fc3f57b3daa50d8cb6135e58b3be8640e85b7f6874c7a46acb95d6f1702cfcf1ce53646e94c90a36660e343d59ff886e6d16848e149f0239135609caf2381df9c5693b7437fa14c9aab495d70d1945affec2d97a0a207a78b122e2d45631036f73c63ea2cc3959faf31b8a7906db710b733f3ab44e42b01a928b8f7ad5d741cd4ab0daf214c9c08acfac158a9b6b63ed9f6e2aec941154a08e01338c1825c3b1a6482a30bbbaf7b5d0db3a3a7446bb540136ef5ddbc5e4d376e2455c46b6342633086a0d683f659d5bef13a019f76597441560671c50ac74a1d903dfd37a08e578201e5116e22d79ad8e58d2e6f0123d5f8d50fc264fd993f0aab1adbb920bbc31ed062a59fce5341cb682cfa78d1576106ab1c7a9b0efcdfd47548986f8a17ae737ede69ecb7c417a4d3270890e191351d841ebf330b267e63c4c4add2b55a66067fb032f18a8647ad0493d2c841a4921807625178a99ca9663b11c051bb0fb6a05d4365538d3131d09174cca1954d57cca8c1c8700312efb2ed0c139af9dad373a7c45b24908bf9141f3c85d86a1605cc035b98866d32e1866808e21f1c4ff0c3b917a63b0a6a1fa8154e2a9f91cef23667c55e07629d49d86d3f459274e549f3521a34f62e4c9a7d3546eae2c7a230bfba1d06ff2906c90880c2d17cd01ad2a8f7dee1fb54f994b1a2d360190f31676787f9a4ed1329e505c961d73e7c1c6296215ececb09b08d71fe81b57f4dd21067bc3680e07f7c0ec0493fd86c3cc4e0ce99bc712547799a76ae011c118a0c0a038d49227f04459957fdce11244f03fb75bc9d979e46ee5e36652a73658e2430ac16b0688794440da15074fdde4cc64ca9b6c912eeeb41c424216222ecf59611856f79289c99767dc273f7d4afe46aed4f538e9231b9e55bdfd57f427437a9fe5453441beedbd30a9b61bae7ce36dae79a260247c51d0ed5e92df31b114c62b201f9b1530926362eb447c57fe346213ca9471ff851b3a78274d91667fd8a2142be1027c641a650983685e241ab3b7058e6fd9313e9aef348df5389a3e5b5919c2fe31242649e5fb4442d00e114bcb776d21cc70c13e3f0e6445300d0fc934087c5d9858e556bdf3384cad33fa7b94f7287c13178d7e7f1411888945d69aa3afb805cf13f720a59e7bc4e48da029eb97b0b276342f88ec6a997f13cd8bd3f2abd1c317fbc6701ec8e2c89a7f6db91899c020478b714a40fe01b9e30487326e435d6c0643c90cc542e7ce93907f513fe27f217a597adba58aa89e8f25b9874923ca2a9b99512e1ebd7e5661d2c460709713ff9e55d22512c4bb4380a2023e0f62ba2265df7023ec7e98b52bc7a9a20030210445e04e03a5706bf28136615319deee46b0f8ffc63a2596f81edb161d85d95ea826b4c56cda064b7730bbbabc1413c5c41951a811b9079b0e736a8bf34a65456468a4d4dcfbe07ca92579f72e2afeede987bcf6fb02cc85383989344e1dd34dae00d7bbda1055c69cbb4b60649ea0f2da4c731a1deb1fac2db5a102d837de2f35f3eec936c9f0b8a90ae62ea3306200204cc51552174cc72f9c97b55d9a1c1de7a004ac5178f5d8dae3f2643aea2f0593885593790b2d02a5b779c853807b3cf933189840a67cbdc7e064a92021d01b43c39259bf253b0a757fa16aa9b7007f9404058dc013f213c10d983bb6b37b688f0616df2675ece9c2936e800e92d9fe26c384be24303ec0bee74a870313288728a6cfa9d57b8197ab7fdc34b7f1eed4173fe4048e2bf822fefc461e80ad6b2e82f9e5a2829d83bc5715adaf186a9db625f895b378ff17aa7a40247f521e7a74e079a947384fe724f8f123ae6941f5935fd90cd821733a1a26aeb951d66239b4401a64f220d3a3ce24c0c60f177a2d10dc1b8b0e09426904d4b7e3fc6be1facc605a2a38af320e3388b71c21ea1aad83dca11df344507b91f73c9c50f9660679b640955b6a54b132861ede6e0932129b18bb15c4028d1cb58beb8e047c0348710c0d2a494ddf22419255808e84b7d2929177e31b4629ceba2e430b755d5598d3979fda859c8906cabe406b415440839ba01a7751101487a6dcc72a90f521f036046a9c91837727fd544f66abc6e58259f18211ab4f60141026d129638ddbbc197fa08102134b9a5e84d1b0b68f27b15abce8cc1ab54758c74cf927ebae8b24c02c0568b99ff797dcd641f9d68f824f8ebac0c7bceca8bbd9b63f6276c848203c4448c8d302570a2238f1b4c6e7bfc0e1eaf4efc1dc271f1afee07b72232b3ff13a3db39cc700ed77783f43e746c1375f35152ef7349faeb76902ae4a5cd8f8871b89a8090600e5b3cb7060ea6ecca3a47a8dfc6f7bc02b4dedd17f430caa24ece79bc523af12394a6b3cfe663c4a227e64fad651033e97cb5c787433cee6c802ef569d453292e0ee46c5f8590f796380739c4c3bfe9261e1aeb0a4a63b73461723f5adf06c3d172d6e469f7e21706ef9691d02ed380024efedb8e896cda700c62d93dbd0c08a7a899fc84bc32a9e5b502d853e5126156f6b5c1d1d776a0a803050d3b7e29092311b5aab80067e78894b93a0c39cf9ceb846c410d8fce9b80968258a7aad287e30575992741a78a71c477c284d56ff0a7a092e7f00357442ee53dbd097626f5fe37630ac8f93ecc0e165e9dfe13c9beebb57c7acbe9605c13617d8de5c57371bb4a7a89cb1178c426c48501851d97c302b0c5284d2474ca880e3cedf802d431f8e501eb3d096bd39baf0f86299de7608170e025f395a48371692d88f3385831172107270aa6e4e7c7aa4b3fd59d195be24d82ad316e1bf15e319c118f7a680bfd4e7f08d1eade84e1e6ed239b9a07d78e2a318ec5b0b7169e17af6935640cc5a41b7357e477d5e9039924e10bf21fa8f44a8dc9b4da928b361f2e0080adada3ce02dabc76e61b7eda6205ad824c80718390de2754c85287ebe8da62042570411cc1c863abc9fd26c120aea4725ca0d3c9e673872f5f1f634c08bf80d3a60a28958feeaef259f5d35ad9b3c97eb4ca9b817207f68883e1f01810d6b5289813423bb81a9b1833e18454fe0e8a08b490fe2f57ad71b13796fbc8eb09128fb6420866253fe075bba071d8a6bd8aea15c44623a8d309a3603c1fd2ae52ebc0f60ef538f9f4d4646701b8f964ba80776681531c8eb1320b2f73746f3863e5c066fe27b61f0589bbd85be52ca6da7cd886366bc0dc2b97fd02b581d2af5faa76d58c2b6c35de007528755a3e85665dce4698f54259e3fb9a2066416a328f8db55f1b4db7d8b6ed4f45d128c33d58f2c34096d4c1e8ede406d99d50e04ca25f8c881051e35975471f36df5876827aaa91d7a572901a9d57ec18a36e3324f9ec617e64487c62e3f744610805184fe11265e608601e4a51bf8569f99ed660e6ee48a7beeead371dbff6f06b6a84d14be3eef834fec6a8fa272ae6ce621ad757b534da3b7404a4f0d4b258c207bf3fad8ee8fea7e9a9f80d2fe4cc00ce561663c700100ac37d87b39c02e12c4b35314b51ff89b5f9abb474bfbdc4c4151a77f2a046ebd73d9d97177c4484f49a39f53ae902582a00d87b4752ae30a3e3f46893d37eacb82f50c1c769a068d55030e23689475d360e9b4c5bd19619ace6c46b0e5a952778b0174a816da17f082decb571652bcfbafe9b3a86e85c6a36305a5f4fe86c2c4b942240f1bfcfe45e7e36ce703dfa94609e7c14e83af8d74d7e6f26ebb00f9d9d4a8e047181cec102a707580505de81275892092c97d1d6ed3e24464f61bf1289d663f807c8a5a0e8d401db0d693ac818417f8c5e7188497856535e344f085e3a51c08f0ba6f0280d9082c87cc911d4ae045a772b2034d2bb0e107ebf8134f2273c7997a6ff89da9f5aa809dfe27ccbac8c35847d3c1fe4d1445c0ce774e912cbf1b2c54f8cf39f4819142901fa54d6e906944a08c8b3da7fbc854208c9a045619026175cbc0e4ea27c8ab2f37de842f2dbd824ca6ac9dc87a8ff83cef67f55536e079021bf3998d2a64b7feb86c0167b943ec87d8c9d15f377664f9b32cc29f7701da0c342c1b75063d635db276fa3970b704ed7eec18465302e9578e61386bfcdd45a155d636d328b04d684baf6a792e0a471ff0ba234036cd997e6bb64f9cfdf3148f67bdda3ffb07c7d3812a156e74abf50dd0da243f0c920a33b9af24a1afc9bf4d47ea868a1efd9cd09c527aed1ca6b5de6f8be949641b47cb5de48761c2b673d6f6f823cd7d35ef19124673d534586ca572c69837876ba8ff8288a3aba59c35344732c8a4e5516a7f0d56d1e119299aded7a73c20162f16bde35d5904aedaa851fbb2176e23efb33d0f0c8472e0a89334740890e1cf892ee79f48ef30670628bc0cd4bf528bdda4ad5cd7f354fff227b50df83fdaded1d3d1f31719853182c5545c21091b02c6da0399d8bf62acfec65f37172649b45cb6a0859d427d3e7cc37b8785797d59613641fbf434a945b1a2f2cac771054f7f6133119e26e57a92a25dfa18aaa62ef224bfc128b1ef86a19b73153e614d35910cc65a53eecea098bb00fadf200c2279790e1352f53e99711832fcc56f5e71116c47d1862c4f85fcedcdfb5b9c03c9e9ab981935f70cfaf3493d541456f7bfc1aad535037f113b63e8e93fccc51577952c8f932f1a37c39e622c4cdbca5e1a1b44bf7f834a76fd121a553dda38152842b6d34f0098494a565d6a6538ddc85f3bdbab505e3ef83a8a23033d01a2868c50272d0f5c03a7f3bf5e0c8e0b11d3a84cac2bfbfdf4b2602c47208437ecb16c2161e3874085b9fe863341ef99c8f4d366f766ad9e2ec8750e7482201bf14e125f7bfe7f19cc602ac0b96a28255df40d41ae15b9f1596b99cec3bee65444ab69f76e299f1305d039672a8b17cb67e22c93fbd7ec83b828f150bdcf9f20a3777a98eebf3d449d6f75a58629fd1315830f0bd0f77f5bcef20bef126e1923a8880ebe89a7f74c0f5a49dd1cee881eabd2d16368075e58d2f4f00f72b0fb2e44420f87a53c0f4a71e3bd3061c9b3540bd1a781c8d63eb7d0c9f172ebaa06d355e94ba6fbd101ea60571db2f079d12723ac30600e14c7d6626affbe3d445289065b0e3e54ede1d4236350a73fa5c9c53929f2354fa9a5a307a94438f3a54f46b0073502bba972cdef1ddbfafb1ed7c05802e082df4530e0453494a6e83f0406f7fce48693f66332111f711842e88ab10dc0d731370b376e4a2376537cc63ee787d9c1b1ff0aedbd46595dc183c1b7263f237d3dc96140b8a84762fecb76ac20d66ab9069795b09bf66527b7bff4e6c57a67c43139745c7fc1dbec49211daf66906ef4355dccfba3f504b3bed1ed259a28f7f77fe19b361e3189ecfc2b06f732c4dac4f6233920004859968b8297ff5c7b79e30c4dff8ffe19228c78416c98e3502e4b209fec3933f67a3b09b5d87f6631c70aa7fecd673e39f6540b80ebd56d2afd95dc08174abed36d6e48fb8168b980b61ca91389f150e56ec749806f729edaa0cf1ec4d2d8cfeacb47a655407109a4ca2279b23b3ccd44dc2fe64028f90fd58045a7562e55d9299f8ae2014d67d1cf4728c021f444a22a4b99a41b7fea3d479a20fe6e46674b064de2c45ffac150bb20167dddeaf8e26fa675a4e207f993d7ab44df1150b1c66296cda640ab107525b9c1a06d4523df546b739c49e010e8138cb7402fb88e28effc9c95b34932fd5a9db0a25b07be551f9ed3776dc8317a3582ef659980ae4bee6ae1177742d25f14f16ec0ce0fcce83939ba545b21b892d3e612d1cb8b442d5d9ed802923e7fbe766f2a1c280f37f82602595d77cf0c17fe3085844fe609768883c360ea090a71300c50fde366702da3c37ce109e6bfad0b804db1d512d47334a29f390343b37e60823297f4f39ab989dc3e23406c13c6f2f0611e5ac4259d24629f106011402cbc05e043bc1df4c844295db83663d67e3cdd857dae13d878058af2d949e535236739cf609813f96ee44a76d6699f417167e032d21750b8d7f04b9160c3b9c851a6c82e24245230f6faf73db5d544a208620a3065a6d07744fec573b674d4911eb8facdfe4b6716d85c5640196bf230bac72c5fafad38b4f4ae7d50573924ee60ada2c0b8d6da3956835169bc8e2373b8c9ddf806567e9bb35d60e16a4931f722fa98175c46280b15f939d7f92041a5102d7a9487e913a33d0ce9b13b3aad59351ff5b0671f85f43b00757ffe77d14bcf4c04f284271366b8774a5eff78f9432b26fe9c9bb16510ed95b12ad0a5ac37039cbba2c2742e278123b4e5e40bbfd2459dfd986febc2025f93786e1ffc458e7b2a41e1f86b06dcc825a26249399f1d673459869907af74bdd6dcd48338bc841fd42648844370d3d42a3bf0dc16daa8f63b8a69f50d442e0db42031e189ccc9add1ec7f74427a2b5a8675e93f033d26715f9ada6269fb72a19098799f366f01e8b8d9e92c34b2a22d164f2aa0142d42ebeaedaa2d9aa61b249b1422326f32b8c60bf281d21988909bed50f7ba679e9899629b7e654b8a5df01ec0fd3b4a5a2a1aafb1d84714d450eb0285df9b42534f0fbdde1cff9f9768c2cbd0512f037c279ec7ff5b49f7cdc1e2a5f18cf7414a3050c0bad5c083e40baff231aeaa21219c170149c0581705927e8c6dc3bd1f256aad62c6c7cac1bc165d838d026db317d7c0861381e845f5388ae356e9482906b6ce778b3fc55eeb24809b92836c3ff94c28e7721b6bbbdc12a9606615e7c6fc3af4a206be3d87ee2a5da0685f41483aa1abe6aca8b4b922e14260433091f2d9f975b3c2302b9237327f73d43e1f92e9bb635ed51878863263882c8361b3846b926922884a81303e2196779d25843f65aeaadc1dbfb18e538e1b603c74f5fc37846f9e3a16a6344a7f9b931b06cd0f09a70aa3a2f12535c2df5cc59287720feb78d3056db023ae3bacad4142af3b8d831e163c0d8dca28449c17401c379a43f1dcc53188b82224211455341fae1b2ab4f2fa3ec8b13c4f2fa75900e39be7ec184496af2896168ea0ee74e9233744c84d0b1c4ce7b6368a917e3a3049006355611964c602d37a0f66e8c5a3abdaea91fc6573146317740ddcc0ccc9a86a8b46bb83fe0fc7a044c9326baf7f5e12965c6b011a803fa98f0c8486bb8274cace633ce7815513c795caab227f0f6821e62d77beb040efbcd56e1017fae03a54f1069a70088b669f7b0c8df204025bc268794c6ee85bea354602cd05ac51323b921e0ec2c5d5665c0dbe59206fa506017c5a1a0a258af6957e155b10b8646fe53f21cde101d421acfe89f4e65058c2fc6bf2b368d07ef8f3d63b18704379372b625e96cd0cc7e8b7b36ac1aab4cd01a62bca05b9c35e6585bd2dfcc6ad2fc62a0e1ee6421632f448876faafad10d2e1197ffb9475dc3e36634f6de485737a4f39863dbb922ab14e71180725f402cd63a9d5aa6bb59c596bda93a835ae47595dd7994b32df18a25ace7dc14d2633b46162e4855d0eeab629e781f8aee820d02db24f41f72d8eb16532b675279bf4665dbb4068c33ae4fcc9ef76b1986570f9afaa5525d60fad92851c83119ec3aa450a07ae8dd86aafd2d7d4db8947c2c61b2b421b9b17700843296de0acbeff6eeb1857c3410e8bc4b89288c39409062df18ea4f9bfcf3b598d9dbade69b8d743090e346f2b629737af6a9e78fca2307e6d06011f02219078b4b16b397b97bfe5ed963a0685ace416c5612de699f1c2a50602cbce8c91f60cdf20886d253bf95f9e558b1801ed1cae9385208bb1dd6978e4e70b0d38d3c6563ffe0e40f2f22d46e87c12b22a7cd95f7ec9daf33a4a3739550e5e8b8855bae53f45f7ee589b2f24d8679796170cb7288395e42fe6c36fdeef3aa8d12571a0676c379ed200", 0x2000, &(0x7f0000000880)={0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, &(0x7f0000000580)={0x90}, 0x0, 0x0, 0x0, 0x0}) mkdir(&(0x7f0000000000)='./file0/../file0/file0\x00', 0x0) syz_fuse_handle_req(r0, &(0x7f0000004280)="b936b4f16ee763f4059aee2fdb5a611d772b6ca56d1b682def8868e738e366b3dd31e77c3f1dcd68f992fbbffe08c6f7a73f5ad6a628b7e0ae8d394fcfa2c9d8d7c9f9a984436a9c8e4352aef9043eb3dc0305333952b6294f017c27128d53aaa584307ccd72cf441276bbfa2a7b371ea257145040cdfe1cafba2f5c03a4ff75b97f377a2cd0c4101a6ad7ae3401866cd97ff78a494bf6f1f144c71f71de83bb7551f1224670694ac03ec30444c1e75a44cb6002263ad2e783522d62044131d2ba7969060ca9b2708c3ac9eeac6d58afce6b544476e9dd3aaabe36a94004bf5ed6ff1b3ee145b971abcd1192dbab3bbb319e8e0680c9bab76e7f8aa8c0f2944e918cfc260020669f20159c113d09d38d90d9087f7ae98d37b9348cf5b8541578715847b6a233d0e8cb12f2cf01d2f8290885ab88f6fd9c72838ac112e63daf77c403447b03329b1f120e910b7b2de6144fc3ae906f5db93669c8c741af3ac4f71e2f952277e59b2b57700197fcdb38116b1aac162b5a50390718b4a4975fa27505915c82ded9afa4ba2f7b0571df5e234f6785f6a5c4f4260b25ee6008588958fa626861703cbf055b1fc3b767ec39b6b2b9e73a53510f753e459a59568fe5013d43dd81f6f3a062eec2e43cdad3e7225d9da12a149df37b2d137b5d85a0c86feb46ff6343ca1133e119b94f080f5127bbb073f8e84667302acacd7cb4ec6e46daebce766f3bb1d61e70cc45ea0c2815c4004432bc57ba12dc563f8488d3f9864b9ab15fdbbdae34f7357e91f5445b01acb2df8e20b10189b232d65cd2a2e6e52d6c4d3924663b83d4ed226cc4ff9a6b41650bd5eff2020c8f72c9549ebacd9f4b03b51d77d252bfd158f7a39c11583b238ad4023ee0128ab3c0583a7b638e15435397eb34f9c24acb03d8b3ad5e5749b45f6803ab96b95d32f37e4aa83bb735ec49110a3a106182695ed4e865470b655b0095a2b427650f07d847d544bb96de3be335b4ac229521ecfa3fc4d58dad885952931e4ff50f4f1d1d1ee8e1da49a0a19518cdfbd9ae0de604c1af5f0b0ca2efe3d148af3abb0278a8382a2d8ccbc678add3b9685291286feece123d9b47b3113aeef4b0422235284bd2d1861bdfe38f2d0750db6ec7474ca545ecf2e182c7f29fdf2749b9f759f32edebf96b4a33100c8f1c1d4d922ad56c4c4b1070e5d1884bb72ce03df1daa025e96e35f594d2bf73d8b0cf5559223212b83065e71475d7954833006050a0cf35d4eb0f7b189c9936a4177360fc8de9da68f5a0d748c979beedb8ee9d16b46d48c16bef05dd51b4df9db6c3546b5cc6bc3fff9788f4f07f99bd98068f347cb4a31a08323293e2994f0220d875052bd80086f44b07ccc02f9e8f9610ffd5b9d3aa19ed6247702b21ab6d472f8fe99c97f98238fc73ffe9908278bbe92efffb933d565c907e8640604584442846e3f17223b5f9f1766437d7f60e7260a78c8cf6d094825a1229d84f6efbce4e751a511f70d88ada46e3e3c8130571ceecee9f45ac802cb8cba506e0ef10322f25aecd972ac7de6cfe7db5fe274c0da083c0a4d772440789e765438045231e209b5b53b1acea480f0876e112c3c6f4863b0676e7a60b00cd957f893f82ab35fedb539024272ee43f552b3357c73f9612838987b10730262fcf359ba03e827fff425544034f7f9dabd8bc8168058ceca5e3852443e35179db4452e9b0bafb85153bab2182342d43d947b6562b469f360ee9ada067ed843eba73f920f5590d42e5bd24727a012544c347cc0b71182b98008b25ccbbdfde3cccb7f75eae21931c5cff372691807beca11124ebf069afaf969ea7e46ef6a10a45aae457f60b5149449a099b4c9adce1db24eabf7d7890e0bd9f7a1c22e15f56a87ed0fe0d299fe52f59cdcd0f91b7762d7985c4051df3ab25cad5d6582abd7ab739aae540db52d292d9964793b46367d14e6296672f346e2252beadd87ed9f2b9ccf6bfd3f338d4bb62bf7b413c04ca2ed5c1eeb32d752fc19e50e2c30203184f79984b4fd6d35ce3b4ae5ef3fd4250a705a0cdd7576b62bdf11cf579fcada58330bb6c0530c65c41ff05c7370c23b760ffba3a7ef8fdfbf575dc7a67571f3cbee1e45f8cdf5e02a70b67978ad0d33505f33d62efe301ebe00c7181bb3b6d145a90a970db0edeeeec7be7ec88ebcf75b5b1a866f86bc9a99b916bebd9ab88be1f3503ce3b029a78249bca8fe4f5faec12127b03e675a172492a53dd4556884f394b501c5adabfc060a73c1205a52a5bda9868617075e589042f4560fa55ee57f4a3b9f60989622be219cc57fa0e24bee12b6182db5f5dc38a1f569d283836bd8a0b26b1f562ed72e33ca3de2ea109b4499da0cec2e964f7b1aa020517c168bd85d3ecb2cdc36fa445706be81d9ae07006bd3f86728be483d0a45975c147f4dc480c5921130a659bfe0954dea25434bcbe0a11ce3fcc354c874875ed6d421ce14cd078e9cd1a3eecc74915f091863b5e91ea253c16cc7570962093289ebaf6f2f44b8edd917253012e455074c12ad908fd0722017667eb74c271903bdfda65aaba18ab6921e3e0eed546c2ee2006ef6205d59b2f04da48a951d24c326d7924a5500b33706cf3c8972f6d9ccdee7a9b4b96f556c1347662c05b8663e7f1e3d1e703c1f71693138242783b55e6e176328f69299faa5fa93908ba99fe3b4e9b186a59c573579e3ca8926d93ba9337f51a01e274ba942a9643ab126d58c6bf7e07a2332a8bbde862ce94517f670196df4786270ba7e1c0c17e957f2b46b402cb0597a9b1928051d56e875d76fbed3a34afc62aaa92c050577897eebca73d4d8c56ee79a4b9f5b178a0e0af46b3c729620c4bc70ebf2c173249f08b182be902a4ae8ad82a356512fa195925447f8715e11bae08a51966350ce501024b3aca616ed05c49a87327423cb42d73d838d747f381c69a74531a521fdfd664b1c13a353f43ae43ea2527fe62dcefa4c979c70340ae3a989d6e23537edfb893a0ef58094b8ef5dc306631c003655f3c3362fcd3b15997a8bc38ef726cbd2de3d4273f827a3451c46ce7cabcea216d948529e32149873a7cd4d969dd3faee1bcb170ffe9b034535d4281156eea56a4424e8f6e6be9d9e24a9b9bfc23cdebd2c3a6d0615785374c39d101b17b32ed60af3b7330c23779e6b31b347ddfafa8e896a414141560f229d1416c88234dda6bd4828ac5de5730a07c2a737cdf2670528aa15bdb98822f922fa3c18cff86d68f60e6f04973f314b54807b0a7e1077df9fd8eca40cf0acd53aa61d63c709a98d31a5719ed2e962b8e666b76a2f377794b65f9b5a61964e4de97135e1034910ca72f7ab262b0709dd58869264be463d3730037e20881fa33a276277b0f95b6800dfde415a082d2547c0d0e31eca9bb7827d0dc6f32c7396c13a044156ad3635b8274a6b2473661dc3a375f9bfc94f583834fd0b7875c55eed735b045365da5d6de4f598f5f7a84fbcb58b413c58bd1aab22aa63671424dd0ddb431a22f0fb600541e298db1d79a14a065c98b516ab43ba7faad66c1dbea91d3bc3672d2ba7842068c51374c093f72d49e8bd5872e76e8ecd92d494a43e60963caf7d85befadcac1c1f1b2f2aad00846adc795925e7e1c55bab79b0304799ace66ea88127d4f8edb70e96bf4757ed0e80e4d222683f932779fb1846769858495331051382b9468289219b0df1825a0abed563f75527e8187bf4b53c5076f0b660fbdce49460dcd08b78fcf07f99d984c478f9da01c7ab7824928be871f633e9e24702574196dd8fbf009a3b726590ff688036e777aa339b04445e0f7868a0020245c879a6f71d5284cb9a7bac80a808764a3d398a53d5e7a7f2ea1889af97ad7fbbee5e3c8f130e6e59da30a32abe57999ed21149bcce3e4383559003c1bfbe91d5d84384b8c11d02d1480980b63150ea885a05012695a0ec7fd5120fc4d92d0272fa14461851b3b3b588bb5342dc843ff56f40c29cb709e68a2530a77e22c4217af7900c53bdecb812df85d3a7e605de9ab6867c21638257f850d816567a8a2397ad555745e55070a2a8762ceaa25f0cfa69d205e9bf6f2c9edf5495137b7d04faee33efc390df26ebf94c7b82c14437dc055bf40b407ca9781c08e02c6f142ae2dbc1e4aa55dd1e96315ed1d3ae194f99b2328fb92b94ee5b5afcd1c0b37a709e613a308774a692af6a8a178145f98895aa86c0e42e4e5603ec229b50bbd06aedfa3695f253b4c6e94df246aef7577e63dab8f9f411901b354c07a439ebf85cdbf57f477e75f589afa7c9f7208462338a95a292ddf0f61b0e4abecfdea3a4acefdbc0df5e937a958474ccba5f818eb843ae52d161c3745d171c9ce0304fb7c85a18603b23a1f9eb7f6643aa48c82820b92f0d3c500e3d968f7ffc437dc521c946c7e12d0041cb476a6c116c0e84c473e0ef1f3dc5d4b2e245374db58c80de0f8a8027cde295dc8f47cd0a029697e5597e53131ad188ec8ba09b2994152fa7b2e05d2d30edf9f78a40376360ce3bf0f8fd04430077d2ced937dca8f62a1d024b54ac34ecd63bb4b689684c7f2bcb7150d496b66119a0f09b47ebba000737a6f465793ee79cb4bac652f36bbc75d4804964c8fcfd406b774751d1bfe87998d99f80bb1c4ed783d190b670bf6c3539547893c26c2a7b1a793ae8be1f31982287a8fc033b99b03075c1b589f73f78e61aeee9296613b4453b6c809dfe7c520d014aa7a1ebe2e46f31cd3847bfc79e88e9569a6b611c0962e57c401069046a0659fef9fdb4c6fe6e110edf99ffb275ceafa9234bc807c3a02e4b1c7d7cd5453b86376df436378e7887676b008a8f9110c0d37fca42c484eb7c66b4787588245ab95f510f6067d7bd41ff6a256fd17b1a0e426966d94f937050efdb184ebadb595e87a5535b89e5c7437181ae089298892afcb527b21eab46685395defe5ffba8cf6b3e08857af2f9c6db9494673dc14c6f82fac16e4a27185d32e25bd4982c89ff622425aca6531e8a0d78afa3939793e77352b34bd5796b722debb341801fb0a9f3dacdf3f49f21ac28a472d6a17691ab1c5382c41fc8fe8679add82547fa485108e920be5866690b24ba73e4ac73aa8b64245f9be0f4748a671a3fecf9b297e5c44b19b3e092ffec942409078a89cc3ae4939b8f91b7f4891f599e68de56197a9e85e42a279b3d36b3bfe937dc56d3f4c9e5c0c697fa03d69e8408e1bbdf49d81aece00565657ed6fcccf723be514d7b728f5f4bb1761454d07e6769ec969de454094a94da915fb8bb5cec855c3e9fcd3e77c590215d98aa88a9cf6394127799b47dddf494b387d5b0209fe195f6e0024ebf52225602df846777bd297c6c69ff4fdf28f15b431ea39d6a46bba3d31d82fc666826247922f7c1ea20a6cdb19adf3c1f879f21112e21fc9637326d4b91007e89912f0d958fbcf4135f72ddd81d861196916a60d483c4d86c19959a1c7a92b6d0e51effc4deb05df57a5c5e444d490c2040ae7263c50540d7d9ac213207107887b8432ffb0b39d453443aa0ac107536e8cf353fc12db53fa950dde1c5700864c8ebf7df6cd6aab650be658ae9581d9b6bd1a2ab072cd10fe644cf7f43c8a072854dfd0fc84bfb170c35fc8dc4ab4c746f4326491f8723336a7e19debb4646089fd252577bbfabd538d8c1ca98c4d63b33adfc1f9ae5001589335ef5a5d24b197ebfa1798030ed8928962706f0af40545d1fb9fa1343deee8ce78fa4977aab68b5b97785cb940e7eb6b80096fc31a5284fc2f10becbd93786ff3b33f57db979464d2a54b677981b6db95962d161bfd3f860f0b22075c6a50897a9c342a479f81d204dc917832b5a73341b1c1241bdcb6dc7d8c711d4eec290d980df3f12cc09cc06b1528ddd6f3f1f41859cbd1dcfbea457bace251a834dd4629e5b132582dc8b9aceefe3e48a66217ce98d72a1778f18486445e4878fb6529346bd83475bc42fb06b196209293eb4ed23d8217298deb8c392e8f0eb4df1f2014bf855aff8fe010ffd5dd3da8a77dd1d25c70f835e5cceccaf9ed95b1726abe70b4189e8c8ebcfbfa45f7227184841e6aef3e3e7eec37f9832507f7572cba814c5478546b22cfb3a8d0300f68145c55f6d425417bceb5b24a9408e4844f6a6a3c143f36ca701ceddfe44fa496453c48d288c5b6f08f1471586659d23c29a255bc2a8d0e1869bc91a9650d018bc3e20eb2f7089e29977faac46020b01cd01fedefe484dfa617431f02a106931410d64ab365bf8ed068e0235f8d2757fed289282686a55dd15a847b758842710d9c483cb907beceb86ac35a240dc3810320137cad68b451bccd49d7a285083df9d5f0df8592b0267e82dd82aa78155c26d26bc4faf4708927a114a3d069299a488932635bb46c96cf3678af463f960af3e750cdaeb322e10099adb7e3a966c43f68c32923fa9e70bc28f98d9ea54d24f3806ac9edea3206def17285f693ed52f26e39ef7dd91924a0e09213d9f2efb7339b7edb6fd58f6b88836d8804a20fc88f5988432c06ac030d05a4caeafe7f34a4acce70a6c82d98010a0dd412d2e789c0c652387dc31b3c4f6dc6dc4ba37951df7a4fc99d578e834a914d3921492cb4be9a87d7ee86e1b684cf6705110e8ec3278d7fc9fdf2bd9a2565cdb2c8abf4a0d8b5ad1ebf549cc05a11e09487978f9edc5e26c3d9ee31066e3a3dc836b585f537aa54542d6e8ccf2d72a9c66314a2572923e289ed7984dce71a424898d356eb4f17c7841ec6c54c8511e78f50b2bad1ce26cf5c490de6c5c397f0249d457ddeb155ff1f6685dd3959f21e33fc42f2debfa491f894fc2e132dfe23003e35c6dfb8decf3d066f025b94ca7dacb385a2a231128f4daf033418b380f191e8b730985fb06d5138e0cec450546f3782f237c13afa17f8f744a53992c9019e10e221f0b829ca395fe407ac85380391f91aca3eb67a489e8df617865f1f206fad7bb3e2653cd0469dc3990951004497cd2a2eb0042904c3ec2dbcab26a0bc46ea60b2240863d55252c3a8ae2939d62519217e31ca7b0b6a494c63b52a16a289fa94981b61be6dd9bae18c5b9dede401285766a1c556984339b24d33e77092ac686aa7b76700bed940ee0ac42397a6098d5c189324c86e1763896307dc9f2f87f2143260c680ffc5d2ac871ad79a07a3cac1b80580ecb4b084178a4422ac960a80ce795492ecb223a3c93176f929fda86e4d15dd20ea2b6476eb021c99034f2c2f37d07fc22380af7e1c045ac1cf5efe0c53e1e8b67729fd243af295b561618c579f445d06157123f2b72492ebe69df8bdfa24e76cbcadf06ac578a61ab767f132fa619d33e67de3173f1c2c2f218cbf884939dcf2be098c6c30c99931c9b0ca6ba745699557d1d7d47c1a7f5baab8360ee9f801ab3ef81cb4882d6489b322f0f3ee2d74e57795b1880b304865d6edea26064a540c253c4c2e86c91a68d2024e76a4baf72dce44e7ca6b88ac462dba127b064dca5f030a6bf7ff42a6857da8879e14f4a831002794da3c78950d4ada6c4f29cab756fd2b541aff1b14ea040db16a2ed55b5caa0f973971910f200ac7d85319a1cf3fe20379a7c28ff7c37e3be538bf00cfafef11fbc0bff8e9e15d9b3f51cd7d4e5e73797fcfe4a2e2941ac27d310896d4c7751bbbf5b83621a9e260858c96d50a3cbff44060f92726ee7fb01ba4717fc78a9ecf3c3d1ac9acbfce3858821bb191359297eb344f1febf18076fcf70a3c709e2cb9208464756fd2c393b1687b89675a4d809b113361222be0e3bbc80703c23f62b940bb417e44eae9d24360a06ae0564bb365f725cec952b7d63181f3307904104e410f1bb386c58e72bf9560056c1b363219391c2f315a6f6790389428cbfb297e15d6404ca65baf944b1198a98cc392bf946e941e04f0aa38be6d788030591b54c49753b16948d2759f5dd3987c12c3aa7d2d281d996466d2057b28d8cb24fdbb4367b287b38e6988c942505224971d06748523c7d48811e58e54832e43cf5e394b2c56ff797d9cbe8c3eea0d16c07c269fd380fc59ce40ede15305ea67f6efe2980a92702050ec281f69b94ea0b2b5024527403663b00efa6790539b74b4b542150739a9e0ba507e834fd9f3f2e8c82add5a77fa2ad13450ea51add9907ccb71735336c64c08c9d9a1b5edef707fec52240533e899fc51da053dc13d9dc7d42ecaa51452fdebdf775f7bbbd022370d9cbb71d9b4e44f7658dd67dbc99ac3ed0e0695549c8bdc12a6757a3096d40af346339e03a4d6597da087393f0c8f045943479f9edd83dbdd955ec5b8cc8c559668834a616d1a3b4b20eb4418cac54b57ab75e9b6d564c61e784d0cc8f238ce2f69b243aa580c3037f126de36f88325beb2e0b1fdb9d41f627d34b71e3b8541fab2534a476bea7d8a4e28ba13456ac0d0135f11648f1d63951840faf5d52949f9688a5b9a89339f8bd161de6989fe8fc3b1c305202918c04c4e4b350da1f9e72d3511faa91c3efb7ccdaf8ce5adba6803831f959198a30d31b9dc8026b71650700cd16d7b5cb4ccb8e47d1235b4790f4e29903fcfe0a76734aa5d20ef5373305fbf6319c5ff447e62db6f6ab72c6e4ff12d211fe74987a8e227c159f04223e844891f3af776c86cbfce6f7d7ef2d536c33301751d488fbf2bc10028a32063dab7bf3b6d6e682f3bb20f1752f532d09da4d7789ffee733a8ae0bb64b4984e6fb7d70e49219e72fd42dafb1e23594ee624d453ff39050b4bbc58303be87c3bc15e5532175d002a97f5721ebac384e95a096be49a6fcb1b4bcf229acfb5290582e6b4e41882efdf484359b9469d2c0f927043dcf3ce24d189d275413b2318e211c963836e7ccf5b129a5daa2cf6451715721796268f92299dab9080c999afc6e378ea357a092ea67e4fb120de26a8dad0532081663dd9bada0f5d84d3761d5662f119451d0753290b6629c3ab1bc6307297374c79cc3a6ba94fce62b485daa14377ace889919121abbf8cc786e3281beef59b8dc5600447e924560845c6dee71c289e839345db644e19a31fec26641e7370982654fbf6c540eb2118ad223186ade395f495254e237a9018c729115e348d30a8406392fa4c3427ba329e178099ee2a881e3439866aa325c4dbd42cb17c715592df3bf5254dd8714b6e6a479c4a42b091a09ab1416ed00ddde6dc4c618dbafd9e037f75d93c312fd83a75c5b0b8f2990b7807995ee7e4f8f4d324aaab4b4e0ce76ea33a0a01414a7da91c00ae9926b0974c3a9d4e4a02329e2c31fdf04bc3e4aeeb5bb30b04dfcfd3b0d02b894d7a76dbd63b1ec113a387256b6b7c05f652ae0d59971fa8ef3dc04aed14853b54b355f846f70b802a23662ac7211f6181318ba9a641932bd204c75d54d9f2649d12efc2b2657b3b5113776c272b911e7fdc0ec19270915051e798cf852ee15d97146f76c9c2a4f03eab7ea217b42fe92685b0c5b7e309bdb8a19d1c3e563d339cc8d5c29bffdaff7108310ea20a7d44e406216aaf6008c2826d6f35c7560632ef27fd4949a6128818f90962b09dcd74a61480281b9079248bf9b0b9329b648ac145920be7351df8d67f1c1ae65dcf14a6ddc6ed0aa10ca4aaa43d2920cba0d67ca9933efebba364a206c369387c90f9f8a292a531ac05b89a0924dd5de15af3833278c8b76e4b82434839891a4e0c3b1bbdce43dfa45fe04af628c8608e845e27bfb6217bc6667abb799b7a67d3699c40d6caec1ed689352dd5c3f6e460d0d644fa1bc113af70399a11b5f83b7b82cd34e0437138e04f36056060fc4f9d48f77160f553dea9d3ba5bb8115c7a90e521c03e4bbbe0960d10998e79d1569d9ec13c9e22a94f49743b59782e6493218e491292545397fc0422e8955e395478d964611c94a50df54b7d109c107f21edba24b66fc0139e45ace7d9041a221fe2df541289ba84cd30deac9f1c0277d253f9a917f1edd27f7a2f5a3d0e294eb90dee68f2d165e51144377757c07918fd5d8d2d47c23c626af3d0e14d134231d37018eb4ca934334fe2fd748897d71bb99a42d8be70c08c483d4777c3731063fee00eb53db4c9365b78f347c543eafbfd0b39cf9c24a724c4a5d077cc05f744867871f2c3016e0726bc24c3375063e028e2611caa29a9071cd6aa751969e576c866f4c047bbcc29ac47b152e98c95dc67bba33f4a2f7e5eeafe42b2e82bf30e70ffdc39d5262692a2fc2627340fb930f2660f1002b847c8eae265463020c5733e85861b6c025506b90327553660018564e58749406fde37259f459d64a95b959e033b514925d699e64335eb8347a621d63fdbf5e9d35f7267d6fe974e3c3840de0f879661edc479c24a7990526e0ccb593642c26f143c05452a06b9d4b706306f03807c45351b86188d8bf9da468602cfa0e4bf0fdcd15fd3b917796e494119a72e25041e408ca7b156262de6ef9df6c1cdf4b582f491d3e7681d9dfc027d1bc79de1b6793f63a5e0781a727e8f7f2fb127727a9555b6afb33c64bedc6c3db1c183d5e45f22f250755868fdbd42e2ffb4c492107e060f9bce0c280c490254f66aec19daff0040ea1551790e3c73966ad1da8c1d00a01235793c2143fcf7f69d91c34c441a1e796b786b2bff67e618f0fec152cb0bbf739df708492cc5976c5122aded08ba35c3bce1095991557605c63673250b8f94d1b72fe353cf69fd190ccf650108941c7c9ebbec02580f7ca0db626c58aa28c6415c75c66d6235b0975144329aa3def3c949fa90972755f526282e293836dc1558b9cbb56554fde46895e59ef50748ca51ae90b265b69570b1136da0c73d05fc22fc21e0b0532c003e46f4a026e786e8e9b3181edf656e651b7a6954bb2978b5a1dea9c1595795c0c142afda12cf23d998f692a0a0fd46b377e74c145c94651faf3a8dccc03c60ddb6e1dfc379cfc5473c5b04c143fd50240e4201a4bbb5ff9625159ff5c9351423b82ce353dd5f1e7eb738e19e0f68a460e81f7ff2efe67db325963212d035694d5ce157f381aa76c7d92fd5b85b22b95b73c40cd5dd37282884bebb23bc31cd587476c602bd0a31a62784a3461a97cf233e1b72de8503c0dbd5678121323278d4ffdf60e877c4bc8ddd0a6fad2ba3c23735fc46cb7bdb13bd3afed9303e0bc0a19ac43b697a715ca2af3f0cf190f89ca4164ed5b194eeda983cc9758f49b3f2cdb19f22f537391aca75e5469b7112b138db877d4772960bc2fe2edd2ed8b42c64a58a7df9c1006e943bba5c25bb339e1bc380e38489129bf5396cbfba1a0f3687cd2f0561187ad4e1c76090a3eaa71bfed488afd4790cc4671b23b3226f400fcd4fc5efe35b24e5634c059daa7837c48343794465ce62a4c52e7a75564cebc4d212b9a355e74f0970039aee9b009d884c4d11b5fa140fa07663972c0db4a4350e51eea026a0dc377912aa002431f8b553b35641522fcdba43eba0c0d49a178fc5b0cfdebf129f224a474dc2ad209a2891d5fe90c3a38374301bc402a8d9f13b2e88589a23d43610d76a1bf832d18381c677d1475074fa063e500", 0x2000, &(0x7f0000000e80)={0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, &(0x7f0000000a40)={0x90, 0x0, 0x0, {0x5, 0x0, 0x0, 0x400000000000, 0x0, 0x0, {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x4000}}}, 0x0, 0x0, 0x0, 0x0}) 07:24:07 executing program 0: r0 = syz_io_uring_setup(0x4636, &(0x7f0000000240), &(0x7f0000002000/0x2000)=nil, &(0x7f0000fed000/0x11000)=nil, &(0x7f0000000100)=0x0, &(0x7f0000000040)=0x0) bpf$PROG_LOAD(0x5, &(0x7f0000000080)={0x0, 0x8, &(0x7f0000001fc0)=ANY=[@ANYBLOB="620af8ff25200021bfa100000000000007010000f8ffffffb702000003000000bd120000000000008500000006000000b70000000000000095000000000000003faf4f2aa3d9b18ed812a2e2c49e8020a6f4e0e4a9446c7670568982b4e020f698393aa0f3881f9c24aa56f15199fa093c59d66b5ece9f36c70d0f13905ea23c22"], 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, '\x00', 0x0, 0x0, 0xffffffffffffffff, 0x8, 0x0, 0x0, 0x10, 0x0}, 0x80) r3 = openat$damon_schemes(0xffffffffffffff9c, &(0x7f0000000180), 0x80800, 0x0) syz_io_uring_submit(r1, r2, &(0x7f0000000000)=@IORING_OP_READ=@pass_buffer={0x16, 0x0, 0x0, @fd=r3, 0x0, &(0x7f0000000140)=""/14, 0xe}, 0x0) io_uring_enter(r0, 0x2fe, 0x5, 0x0, 0x0, 0x0) 07:24:07 executing program 2: syz_mount_image$ocfs2(&(0x7f0000000000), &(0x7f0000000100)='./file0\x00', 0x7000000, 0x3b, &(0x7f0000000200)=[{&(0x7f0000010000)="02020202020202027468697320697320616e206f6366733220766f6c756d650002020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202027468697320697320616e206f6366733220766f6c756d6500020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202027468697320697320616e206f6366733220766f6c756d65000202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202027468697320697320616e206f6366733220766f6c756d65000202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202024f434653563200007f1ef014ffffffff00000000002000000000000000000000000000000000000000000000310000000000000000000000751f1f6300000000751f1f63000000000000000000000000020000000000000000000000000000007f1ef01400000000000000000000000000000000000000000000000000000000b83abdfdac0a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005a00000014000000000000000000751f1f6300000000000000000300000058bf00000700000009000000000000000a000000000000000c0000000e000000020000003748825f0400"/8480, 0x2120}, {&(0x7f0000012120)="00000000000000000000000000000000a92c83a1352f432895326cda257351bf00000000000000000000000000000000000000000000000000010000ade51acc7e0cd8aecea1549d00"/96, 0x60, 0x2140}, {&(0x7f0000012180)="47524f5550303100c00f0020710e00007f1ef0140000000000000000000000000f000000000000000400000000000000db7466b36d0c00000000000000000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f00"/640, 0x280, 0x4000}, {&(0x7f0000012400)="47524f5550303100c00f1001f60000007f1ef0140000000000000000000000000c0000000000000008000000000000000cbc8352f80100000000000000000000ffffff0300"/96, 0x60, 0x8000}, {&(0x7f0000012460)="494e4f44453031007f1ef014ffff010000000000000000000000000000000000380f000000000000ed41030011000000751f1f6300000000751f1f6300000000751f1f63000000000000000000000000090000000000000000000000000000007f1ef01400000000000000000000000000000000000001000000000000000000280ff83ca00400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000380f0000000000000900000000000000100001022e0000000900000000000000100002022e2e00003d42000000000000180f0a026c6f73742b666f756e640000", 0x100, 0x9000}, {&(0x7f0000012560)="494e4f44453031007f1ef014ffff020000000000000000000000000000000000380f000000000000ed41040011000000751f1f6300000000751f1f6300000000751f1f630000000000000000000000000a0000000000000000000000000000007f1ef01400000000000000000000000000000000000001000000000000000000e8a6f417ed1600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000380f0000000000000a00000000000000100001022e0000000a00000000000000100002022e2e00000b0000000000000018000a016261645f626c6f636b7300000c0000000000000020001201676c6f62616c5f696e6f64655f616c6c6f6300000d0000000000000014000801736c6f745f6d61700e00000000000000180009016865617274626561740000000f000000000000001c000d01676c6f62616c5f6269746d6170000000100000000000000018000b016171756f74612e7573657200110000000000000018000c016171756f74612e67726f757012000000000000001c000f026f727068616e5f6469723a303030300013000000000000001c000f026f727068616e5f6469723a3030303100140000000000000020001101657874656e745f616c6c6f633a30303030000000150000000000000020001101657874656e745f616c6c6f633a3030303100000016000000000000001c001001696e6f64655f616c6c6f633a3030303017000000000000001c001001696e6f64655f616c6c6f633a30303031180000000000000018000c016a6f75726e616c3a30303030190000000000000018000c016a6f75726e616c3a303030311a000000000000001c0010016c6f63616c5f616c6c6f633a303030301b000000000000001c0010016c6f63616c5f616c6c6f633a303030311c00000000000000200011017472756e636174655f6c6f673a303030300000001d00000000000000200011017472756e636174655f6c6f673a303030310000001e000000000000001c0010016171756f74612e757365723a303030301f000000000000001c0010016171756f74612e757365723a303030312000000000000000200011016171756f74612e67726f75703a303030300000002100000000000000b80c11016171756f74612e67726f75703a3030303100"/896, 0x380, 0xa000}, {&(0x7f00000128e0)="494e4f44453031007f1ef014ffff0300000000000000000000000000000000000000000000000000a481010011000000751f1f6300000000751f1f6300000000751f1f630000000000000000000000000b0000000000000000000000000000007f1ef0140000000000000000000000000000000000000000000000000000000085ed3c1db603000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f300"/224, 0xe0, 0xb000}, {&(0x7f00000129c0)="494e4f44453031007f1ef014ffff0400000000004400000000000000000000000000110000000000a481010091040000751f1f6300000000751f1f6300000000751f1f630000000000000000000000000c0000000000000000000000000000007f1ef01400000000000000000000000000000000000000000000000000000000cccff09f620200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001a0000001001000044000400f30001000000000000000000f6000000100100000800000000000000", 0xe0, 0xc000}, {&(0x7f0000012aa0)="494e4f44453031007f1ef014ffff0500000000000100000000000000000000000040000000000000a481010011000000751f1f6300000000751f1f6300000000761f1f630000000000000000000000000d0000000000000000000000000000007f1ef01400000000000000000000000000000000000000000000000000000000075330279202000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f30001000000000000000000000000000000010000001842000000000000", 0xe0, 0xd000}, {&(0x7f0000012b80)="494e4f44453031007f1ef014ffff0600000000004000000000000000000000000000100000000000a481010011020000751f1f6300000000751f1f6300000000751f1f630000000000000000000000000e0000000000000000000000000000007f1ef014000000000000000000000000000000000000000000000000000000009a7d2e882505000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f30001000000000000000000000000000000400000001801000000000000", 0xe0, 0xe000}, {&(0x7f0000012c60)="494e4f44453031007f1ef014ffff0700000000000020000000000000000000000000000800000000a481010091040000751f1f6300000000751f1f6300000000751f1f630000000000000000000000000f0000000000000000000000000000007f1ef0140000000000000000000000000000000000000000000000000000000025fea9c2220600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008f11000000200000007e0100f30001000000000000000000710e0000002000000400000000000000", 0xe0, 0xf000}, {&(0x7f0000012d40)="494e4f44453031007f1ef014ffff0800000000000200000000000000000000000060000000000000a481010011100000751f1f6300000000751f1f6300000000761f1f63000000000000000000000000100000000000000000000000000000007f1ef014000000000000000000000000000000000000000000000000000000008f1f0d952103000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f30002000000000000000000000000000000010000001c420000000000000100000001000000344200"/256, 0x100, 0x10000}, {&(0x7f0000012e40)="494e4f44453031007f1ef014ffff0900000000000200000000000000000000000060000000000000a481010011100000751f1f6300000000751f1f6300000000761f1f63000000000000000000000000110000000000000000000000000000007f1ef01400000000000000000000000000000000000000000000000000000000f539bcb01c07000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f300020000000000000000000000000000000100000028420000000000000100000001000000384200"/256, 0x100, 0x11000}, {&(0x7f0000012f40)="494e4f44453031007f1ef014ffff0a0000000000000000000000000000000000380f000000000000ed41020011000000751f1f6300000000751f1f6300000000751f1f63000000000000000000000000120000000000000000000000000000007f1ef0140000000000000000000000000000000000000100000000000000000090aa2dc04d0200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000380f0000000000001200000000000000100001022e0000000a00000000000000280f02022e2e00"/256, 0x100, 0x12000}, {&(0x7f0000013040)="494e4f44453031007f1ef014ffff0b0000000000000000000000000000000000380f000000000000ed41020011000000751f1f6300000000751f1f6300000000751f1f63000000000000000000000000130000000000000000000000000000007f1ef014000000000000000000000000000000000000010000000000000000008ba223c5f20600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000380f0000000000001300000000000000100001022e0000000a00000000000000280f02022e2e00"/256, 0x100, 0x13000}, {&(0x7f0000013140)="494e4f44453031007f1ef014ffff0c00000000000000000000000000000000000000000000000000a481010091040000751f1f6300000000751f1f6300000000751f1f63000000000000000000000000140000000000000000000000000000007f1ef014000000000000000000000000000000000000000000000000000000002b6b221d32010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010400f300"/224, 0xe0, 0x14000}, {&(0x7f0000013220)="494e4f44453031007f1ef014ffff0d00000000000000000000000000000000000000000000000000a481010091040000751f1f6300000000751f1f6300000000751f1f63000000000000000000000000150000000000000000000000000000007f1ef014000000000000000000000000000000000000000000000000000000001a2efe98c1030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010400f300"/224, 0xe0, 0x15000}, {&(0x7f0000013300)="494e4f44453031007f1ef014ffff0e00000000000001000000000000000000000000400000000000a481010091040000751f1f6300000000751f1f6300000000751f1f63000000000000000000000000160000000000000000000000000000007f1ef01400000000000000000000000000000000000000000000000000000000304f318b65040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020000000004000000010400f30001000000000000000000fe030000000400003c42000000000000", 0xe0, 0x16000}, {&(0x7f00000133e0)="494e4f44453031007f1ef014ffff0f00000000000000000000000000000000000000000000000000a481010091040000751f1f6300000000751f1f6300000000751f1f63000000000000000000000000170000000000000000000000000000007f1ef0140000000000000000000000000000000000000000000000000000000039a2374834010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010400f300"/224, 0xe0, 0x17000}, {&(0x7f00000134c0)="494e4f44453031007f1ef014ffff1000000000000008000000000000000000000000000200000000a481010011010000751f1f6300000000751f1f6300000000751f1f63000000000000000000000000180000000000000000000000000000007f1ef0140000000000000000000000000000000000000000000000000000000089fc747cf707000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f30001000000000000000000000000000000000800001802000000000000", 0xe0, 0x18000}, {&(0x7f00000135a0)="494e4f44453031007f1ef014ffff1100000000000008000000000000000000000000000200000000a481010011010000751f1f6300000000751f1f6300000000751f1f63000000000000000000000000190000000000000000000000000000007f1ef0140000000000000000000000000000000000000000000000000000000096f2f575dd03000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f30001000000000000000000000000000000000800001822000000000000", 0xe0, 0x19000}, {&(0x7f0000013680)="494e4f44453031007f1ef014ffff1200000000000000000000000000000000000000000000000000a4810100d1000000751f1f6300000000751f1f6300000000751f1f630000000000000000000000001a0000000000000000000000000000007f1ef014000000000000000000000000000000000000000000000000000000000ea913a3b7030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000300f00"/224, 0xe0, 0x1a000}, {&(0x7f0000013760)="494e4f44453031007f1ef014ffff1300000000000000000000000000000000000000000000000000a4810100d1000000751f1f6300000000751f1f6300000000751f1f630000000000000000000000001b0000000000000000000000000000007f1ef014000000000000000000000000000000000000000000000000000000003feccf2644010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000300f00"/224, 0xe0, 0x1b000}, {&(0x7f0000013840)="494e4f44453031007f1ef014ffff1400000000000000000000000000000000000000000000000000a481010011080000751f1f6300000000751f1f6300000000751f1f630000000000000000000000001c0000000000000000000000000000007f1ef01400000000000000000000000000000000000000000000000000000000fe0c1aafcb0400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e70100"/224, 0xe0, 0x1c000}, {&(0x7f0000013920)="494e4f44453031007f1ef014ffff1500000000000000000000000000000000000000000000000000a481010011080000751f1f6300000000751f1f6300000000751f1f630000000000000000000000001d0000000000000000000000000000007f1ef01400000000000000000000000000000000000000000000000000000000cf49c62a380600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e70100"/224, 0xe0, 0x1d000}, {&(0x7f0000013a00)="494e4f44453031007f1ef014ffff1600000000000100000000000000000000000020000000000000a481010011100000751f1f6300000000751f1f6300000000761f1f630000000000000000000000001e0000000000000000000000000000007f1ef01400000000000000000000000000000000000000000000000000000000f4300ba0d007000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f30001000000000000000000000000000000010000002042000000000000", 0xe0, 0x1e000}, {&(0x7f0000013ae0)="494e4f44453031007f1ef014ffff1700000000000100000000000000000000000020000000000000a481010011100000751f1f6300000000751f1f6300000000761f1f630000000000000000000000001f0000000000000000000000000000007f1ef01400000000000000000000000000000000000000000000000000000000f5bce4d3ed03000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f30001000000000000000000000000000000010000002442000000000000", 0xe0, 0x1f000}, {&(0x7f0000013bc0)="494e4f44453031007f1ef014ffff1800000000000100000000000000000000000020000000000000a481010011100000751f1f6300000000751f1f6300000000761f1f63000000000000000000000000200000000000000000000000000000007f1ef014000000000000000000000000000000000000000000000000000000004834299b3905000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f30001000000000000000000000000000000010000002c42000000000000", 0xe0, 0x20000}, {&(0x7f0000013ca0)="494e4f44453031007f1ef014ffff1900000000000100000000000000000000000020000000000000a481010011100000751f1f6300000000751f1f6300000000761f1f63000000000000000000000000210000000000000000000000000000007f1ef014000000000000000000000000000000000000000000000000000000002a04fdb11b01000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f30001000000000000000000000000000000010000003042000000000000", 0xe0, 0x21000}, {&(0x7f0000013d80)="c03b39980000000400000000000010000000200000000001000000010000000100000000000000000000000000000000a92c83a1352f432895326cda257351bf0000000100"/96, 0x60, 0x218000}, {&(0x7f0000013de0)="c03b39980000000400000000000010000000200000000001000000010000000100000000000000000000000000000000a92c83a1352f432895326cda257351bf0000000100"/96, 0x60, 0x2218000}, {&(0x7f0000013e40)="7024f50c00000000803a0900803a090010270000060000000000000005000000380f000000000000ed41030011000000751f1f6300000000751f1f6300000000751f1f63000000000000000000000000090000000000000000000000000000007f1ef01400000000000000000000000000000000000001000000000000000000d394d8b5740300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000380f0000000000000900000000000000100001022e0000000900000000000000280f02022e2e00"/256, 0x100, 0x421c000}, {&(0x7f0000013f40)="0000000000000000000000000000000000000000000000005f608695f80700000200"/64, 0x40, 0x421cfe0}, {&(0x7f0000013f80)="000000000000000000000000000000000000000000000000b6ad528d050000000300"/64, 0x40, 0x421dfe0}, {&(0x7f0000013fc0)="0000000000000000000000000000000000000000000000009a048ad7060000000400"/64, 0x40, 0x421efe0}, {&(0x7f0000014000)="0000000000000000000000000000000000000000000000001f5df08806000000c024f50c0000000001000000010000000200"/64, 0x40, 0x421ffe0}, {&(0x7f0000014040)="00000000000000000000000000000000000000000000000090aefd31bc000000", 0x20, 0x4220fe0}, {&(0x7f0000014060)="000000000000000000000000000000000000000000000000eeffe33800000000", 0x20, 0x4221fe0}, {&(0x7f0000014080)="c024f50c0000000001000000010000000200"/32, 0x20, 0x4224000}, {&(0x7f00000140a0)="00000000000000000000000000000000000000000000000090aefd31bc000000", 0x20, 0x4224fe0}, {&(0x7f00000140c0)="000000000000000000000000000000000000000000000000eeffe33800000000", 0x20, 0x4225fe0}, {&(0x7f00000140e0)="7124f50c00000000803a0900803a0900102700000600000000000000050000000060000000000000a481010011100000751f1f6300000000751f1f6300000000761f1f63000000000000000000000000100000000000000000000000000000007f1ef014000000000000000000000000000000000000000000000000000000008f1f0d952103000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f30002000000000000000000000000000000010000001c420000000000000100000001000000344200"/256, 0x100, 0x4228000}, {&(0x7f00000141e0)="00000000000000000000000000000000000000000000000093abe5e6030700000200"/64, 0x40, 0x4228fe0}, {&(0x7f0000014220)="000000000000000000000000000000000000000000000000b6ad528d050000000300"/64, 0x40, 0x4229fe0}, {&(0x7f0000014260)="0000000000000000000000000000000000000000000000009a048ad7060000000400"/64, 0x40, 0x422afe0}, {&(0x7f00000142a0)="0000000000000000000000000000000000000000000000001f5df08806000000c124f50c0000000001000000010000000200"/64, 0x40, 0x422bfe0}, {&(0x7f00000142e0)="000000000000000000000000000000000000000000000000bc07256bbf000000", 0x20, 0x422cfe0}, {&(0x7f0000014300)="000000000000000000000000000000000000000000000000eeffe33800000000", 0x20, 0x422dfe0}, {&(0x7f0000014320)="c124f50c0000000001000000010000000200"/32, 0x20, 0x4230000}, {&(0x7f0000014340)="000000000000000000000000000000000000000000000000bc07256bbf000000", 0x20, 0x4230fe0}, {&(0x7f0000014360)="000000000000000000000000000000000000000000000000eeffe33800000000", 0x20, 0x4231fe0}, {&(0x7f0000014380)="0500"/32, 0x20, 0x4234000}, {&(0x7f00000143a0)="00000000000000000000000000000000000000000000000033f428d205000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100"/96, 0x60, 0x4234fe0}, {&(0x7f0000014400)="0000000000000000000000000000000000000000000000007375191502010000", 0x20, 0x4235fe0}, {&(0x7f0000014420)="0500"/32, 0x20, 0x4238000}, {&(0x7f0000014440)="00000000000000000000000000000000000000000000000033f428d205000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100"/96, 0x60, 0x4238fe0}, {&(0x7f00000144a0)="0000000000000000000000000000000000000000000000007375191502010000", 0x20, 0x4239fe0}, {&(0x7f00000144c0)="47524f555030310000010004fe0300007f1ef01400000000000000000000000016000000000000003c420000000000006f711d99fb01000000000000000000000300"/96, 0x60, 0x423c000}, {&(0x7f0000014520)="494e4f44453031007f1ef0140000010000000000000000000000000000000000380f000000000000ed41020001000000761f1f6300000000761f1f6300000000761f1f630000000000000000000000003d4200000000000000000000000000007f1ef01400000000000000000000000000000000000001000000000000000000c995d9cc97070000000000000000000000000000000000003c420000000000000000000000000000000000000000000000000000000000000000000000000000380f0000000000003d42000000000000100001022e0000000900000000000000280f02022e2e00"/256, 0x100, 0x423d000}], 0x0, &(0x7f0000014620), 0x1) 07:24:07 executing program 5: prlimit64(0x0, 0xe, &(0x7f00000001c0)={0x8, 0x8b}, 0x0) sched_setscheduler(0x0, 0x2, &(0x7f0000000080)=0x6) sched_setaffinity(0x0, 0x8, &(0x7f0000000000)=0x5) r0 = getpid() sched_setscheduler(r0, 0x1, &(0x7f0000000240)=0x1) socketpair$unix(0x1, 0x3, 0x0, &(0x7f0000000200)={0xffffffffffffffff, 0xffffffffffffffff}) connect$unix(r1, &(0x7f000057eff8)=@abs, 0x6e) sendmmsg$unix(r2, &(0x7f00000bd000), 0x318, 0x0) recvmmsg(r1, &(0x7f00000000c0), 0x10106, 0x2, 0x0) r3 = socket$netlink(0x10, 0x3, 0x0) openat$tun(0xffffffffffffff9c, 0x0, 0x0, 0x0) sendmsg$nl_route(r3, &(0x7f0000000240)={0x0, 0x0, &(0x7f0000000040)={&(0x7f0000000280)=ANY=[@ANYBLOB="4000000010001fff000000000049000000000000", @ANYRES32=0x0, @ANYBLOB="81ffffff08000000180012800e0001007769726567756172640000000400028008000a00", @ANYRES32], 0x40}}, 0x0) 07:24:07 executing program 3: syz_mount_image$ntfs(&(0x7f0000000000), &(0x7f0000000100)='./file0\x00', 0x120110, 0x29, &(0x7f0000000200)=[{&(0x7f0000010000)="eb52904e5446532020202000020800000000000000f8000000000000000000000000000080008000ff0f000000000000ff00000000000000ff00000000000000f60000000100000088c3c373e3f92313000000000e1fbe717cac22c0740b56b40ebb0700cd105eebf032e4cd16cd19ebfe54686973206973206e6f742061206220506c6561736520696e73657274206120626f6f7461626c6520666c6f70707920616e640d0a707265737320616e79206b657920746f2074727920616761696e202e2e2e200d0a00"/224, 0xe0}, {&(0x7f0000000180)="00000000000000000000f3ffff6086cf3e9900000000000000000000020f00000055aa", 0x23, 0x1e0}, {&(0x7f0000010100)="ffff0007000000003f00"/32, 0x20, 0x2000}, {&(0x7f0000010120)="46494c4530000300000000000000000001000100380001009801000000040000000000000000000004000000000000000800000000000000100000006000000000001800000000004800000018000000000000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000000000000000000300000006800000000001800000002004a00000018000100050000000000050000ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d8010070000000000000006c0000000000000600000000000000040324004d0046005400000000000000800000004800000001004000000001000000000000000000120000000000000040000000000000000030010000000000001801000000000000180100000000001113040000000000b00000004800000001004000000003000000000000000000000000000000000040000000000000000010000000000000100000000000000010000000000000001101020000000000ffffffff00"/416, 0x1a0, 0x4000}, {&(0x7f00000102c0)='\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\b\x00', 0x20, 0x41e0}, {&(0x7f00000102e0)="000000000000000000000000000000000000000000000000000000000000080046494c453000030000000000000000000100010038000100580100000004000000000000000000000300000001000000020000000000000010000000600000000000180000000000480000001800000000ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d80106000000000000000000000000000000000000000001000000000000000000000000000000000000300000007000000000001800000002005200000018000100050000000000050000ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d801001000000000000000100000000000000600000000000000080324004d00460054004d00690072007200000000000000800000004800000001004000000001000000000000000000000000000000000040000000000000000010000000000000001000000000000000100000000000002101ff0000000000ffffffff00"/384, 0x180, 0x43e0}, {&(0x7f0000010460)="0000000000000000000000000000000000000000000000000000000000000200", 0x20, 0x45e0}, {&(0x7f0000010480)="000000000000000000000000000000000000000000000000000000000000020046494c453000030000000000000000000200010038000100580100000004000000000000000000000300000002000000020000000000000010000000600000000000180000000000480000001800000000ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d80106000000000000000000000000000000000000000001000000000000000000000000000000000000300000007000000000001800000002005200000018000100050000000000050000ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d801000004000000000000000400000000000600000000000000080324004c006f006700460069006c0065000000000000008000000048000000010040000000010000000000000000003f0000000000000040000000000000000000040000000000000004000000000000000400000000002140000100000000ffffffff00"/384, 0x180, 0x47e0}, {&(0x7f0000010600)="0000000000000000000000000000000000000000000000000000000000000200", 0x20, 0x49e0}, {&(0x7f0000010620)="000000000000000000000000000000000000000000000000000000000000020046494c453000030000000000000000000300010038000100e00100000004000000000000000000000600000003000000020000000000000010000000480000000000180000000000300000001800000000ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d80106000000000000000000000000000000300000006800000000001800000001005000000018000100050000000000050000ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d8010000000000000000000000000000000006000000000000000703240056006f006c0075006d00650050000000800000000000180000000200640000001800000001000480480000005400000000000000140000000200340002000000000014009f011200010100000000000512000000000018009f011200010200000000000520000000200200000101000000000005120000000102000000000005200000002002000000000000600000003000000000001800000004001200000018000000730079007a006b0061006c006c0065007200000000000000700000002800000000001800000005000c0000001800000000000000000000000301000000000000800000001800000000001800000003000000000018000000ffffffff000000000000000000000000000000000000000000000000000000000000000000000200", 0x220, 0x4be0}, {&(0x7f00000007c0)="000000000000000000000000000000000000000000000000000000000000020046494c453000030000000000000000000400010038000100c00100000004000000000000000000000400000004000000020000000000000010000000480000000000180000000000300000001800000000ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d80106000000000000000000000000000000300000007000000000001800000002005200000018000100050000000000050000ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d8010010000000000000000a00000000000006000000000000000803240041007400740072004400650066000000000000005000000080000000000018000000030064000000180000000100048048000000540000000000000014000000020034000200000000001400890012000101000000000005120000000000180089001200010200000000000520000000200200000101000000000005120000000102000000000005200000002002000000000000800000004800000001004000000001000000000000000000000000000000000040000000000000000010000000000000000a000000000000000a0000000000001101460000000000ffffffff00000000", 0x1e0, 0x4fe0}, {&(0x7f0000010a20)="0000000000000000000000000000000000000000000000000000000000000200", 0x20, 0x51e0}, {&(0x7f0000010a40)="000000000000000000000000000000000000000000000000000000000000020046494c453000030000000000000000000500010038000300000200000004000000000000000000000600000005000000070000000000000010000000480000000000180000000000300000001800000000ab884a9fc6d80137340d4b9fc6d80137340d4b9fc6d80100ab884a9fc6d80126000000000000000000000000000000300000006000000000001800000001004400000018000100050000000000050000ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d80100000000000000000000000000000000060000100000000001032e00000000005000000048000000010040000000020000000000000000000100000000000000400000000000000000200000000000002c100000000000002c10000000000000110243000000000090000000580000000004180000000300380000002000000024004900330030003000000001000000001000000100000010000000280000002800000001000000000000000000000018000000030000000000000000000000a000000050000000010440000000050000000000000000000000000000000000480000000000000000100000000000000010000000000000001000000000000024004900330030001101450000000000b0000000280000000004180000000400080000002000000024004900330030000100000000000000ffffffff00000700", 0x220, 0x53e0}, {&(0x7f0000010c60)="000000000000000000000000000000000000000000000000000000000000070046494c453000030000000000000000000600010038000100500100000004000000000000000000000300000006000000020000000000000010000000600000000000180000000000480000001800000000ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d80106000000000000000000000000000000000000000001000000000000000000000000000000000000300000006800000000001800000002005000000018000100050000000000050000ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d801001000000000000040000000000000000600000000000000070324004200690074006d0061007000800000004800000001004000000001000000000000000000000000000000000040000000000000000010000000000000400000000000000040000000000000001101470000000000ffffffff00"/384, 0x180, 0x57e0}, {&(0x7f0000010de0)="0000000000000000000000000000000000000000000000000000000000000200", 0x20, 0x59e0}, {&(0x7f0000010e00)="000000000000000000000000000000000000000000000000000000000000020046494c453000030000000000000000000700010038000100b80100000004000000000000000000000400000007000000020000000000000010000000480000000000180000000000300000001800000000ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d80106000000000000000000000000000000300000006800000000001800000002004c00000018000100050000000000050000ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d8010020000000000000002000000000000006000000000000000503240042006f006f007400000000005000000080000000000018000000030064000000180000000100048048000000540000000000000014000000020034000200000000001400890012000101000000000005120000000000180089001200010200000000000520000000200200000101000000000005120000000102000000000005200000002002000000000000800000004800000001004000000001000000000000000000010000000000000040000000000000000020000000000000002000000000000000200000000000001102000000000000ffffffff00"/480, 0x1e0, 0x5be0}, {&(0x7f0000010fe0)="0000000000000000000000000000000000000000000000000000000000000200", 0x20, 0x5de0}, {&(0x7f0000011000)="000000000000000000000000000000000000000000000000000000000000020046494c453000030000000000000000000800010038000100780100000004000000000000000000000400000008000000020000000000000010000000600000000000180000000000480000001800000000ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d80106000000000000000000000000000000000000000001000000000000000000000000000000000000300000007000000000001800000003005200000018000100050000000000050000ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d8010000000000000000000000000000000006000000000000000803240042006100640043006c0075007300ffff00000000800000001800000000001800000002000000000018000000800000005000000001044000000001000000000000000000fe01000000000000480000000000000000f01f000000000000f01f00000000000000000000000000240042006100640002ff010000000000ffffffff00"/416, 0x1a0, 0x5fe0}, {&(0x7f0000000140)="0000000000000000000000000000000000000000000000000000000000000200", 0x20, 0x61e0}, {&(0x7f00000111c0)="000000000000000000000000000000000000000000000000000000000000020046494c453000030000000000000000000900010038000900a80200000004000000000000000000000500000009000000020000000000000010000000600000000000180000000000480000001800000000ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d80106000020000000000000000000000000000000000101000000000000000000000000000000000000300000006800000000001800000001005000000018000100050000000000050000ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d80100000000000000000000000000000000060000200000000007032400530065006300750072006500800000005000000001044000000002000000000000000000400000000000000048000000000000000010040000000000fc00040000000000fc000400000000002400530044005300114148000000000090000000b00000000004180000000300900000002000000024005300440048000000000012000000001000000100000010000000800000008000000000000000180014000000000030000800000000005124b300010100005124b3000101000080000000000000007c0000004900490018001400000000003000080000000000f01203f800010000f01203f80001000000000000000000007c000000490049000000000000000000100000000200020090000000a000000000041800000004008000000020000000240053004900490000000000100000000010000001000000100000007000000070000000000000001400140000000000280004000000000000010000f01203f80001000000000000000000007c00000014001400000000002800040000000000010100005124b3000101000080000000000000007c00000000000000000000001000000002000000ffffffff00"/736, 0x2e0, 0x63e0}, {&(0x7f00000114a0)="000000000000000000000000000000000000000000000000000000000000020046494c453000030000000000000000000a0001003800010098010000000400000000000000000000040000000a000000020000000000000010000000600000000000180000000000480000001800000000ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d80106000000000000000000000000000000000000000001000000000000000000000000000000000000300000006800000000001800000003005000000018000100050000000000050000ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d801000002000000000000000200000000000600000000000000070324005500700043006100730065008000000048000000010040000000010000000000000000001f0000000000000040000000000000000000020000000000000002000000000000000200000000002120890000000000800000004800000000051800000002002000000028000000240049006e0066006f0000000000000020000000000000000c691b6b777edcda00000000000000000000000000000000ffffffff00"/448, 0x1c0, 0x67e0}, {&(0x7f0000011660)="0000000000000000000000000000000000000000000000000000000000000200", 0x20, 0x69e0}, {&(0x7f0000011680)="000000000000000000000000000000000000000000000000000000000000020046494c453000030000000000000000000b0001003800030080020000000400000000000000000000030000000b000000020000000000000010000000600000000000180000000000480000001800000000ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d80106000000000000000000000000000000000000000101000000000000000000000000000000000000300000006800000000001800000001005000000018000100050000000000050000ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d8010000000000000000000000000000000006000010000000000703240045007800740065006e00640090000000780100000004180000000200580100002000000024004900330030003000000001000000001000000100000010000000480100004801000000000000190000000000010060004e00000000000b00000000000b0000ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d801000000000000000000000000000000002600002000000000060324004f0062006a00490064000000180000000000010060004e00000000000b00000000000b0000ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d80100000000000000000000000000000000260000200000000006032400510075006f007400610002001a0000000000010068005200000000000b00000000000b0000ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d80100000000000000000000000000000000260000200000000008032400520065007000610072007300650000000000000000000000000000001000000002000000ffffffff00000000", 0x2a0, 0x6be0}, {&(0x7f0000011920)="00000000000000000000000000000000000000000000000000000000000002", 0x1f, 0x6fe0}, {&(0x7f00000125a0)="000000000000000000000000000000000000000000000000000000000000020046494c453000030000000000000000000100010038000d00700200000004000000000000000000000400000018000000020000000000000010000000600000000000180000000000480000001800000000ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d80126000020000000000000000000000000000000000101000000000000000000000000000000000000300000006800000000001800000001004e000000180001000b00000000000b0000ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d80100000000000000000000000000000000260000200000000006032400510075006f0074006100000090000000780000000002180000000300580000002000000024004f00000000000000000011000000001000000100000010000000480000004800000000000000200004000000000028001000000000000102000000000005200000002002000000010000200000000000000000000000100000000200000090000000f00000000002180000000200d00000002000000024005100000000000000000010000000001000000100000010000000c0000000c00000000000000014003000000000004800040000000000010000000200000001000000000000000000000000ab884a9fc6d801ffffffffffffffffffffffffffffffff0000000000000000000002", 0x21f, 0x9fe0}, {&(0x7f0000000040)="00000000000000000000000000000000000000000000000000000000000002d461243e4b5356d5588ac71a90c69ea277e92d7d4bd55d84f6088a0b5c7a359e7842582261c4c83c453068cd3967ec468544b663a0cccc9e2bab17f5ece04715951cf712de060d49efe6dd7a25aac9837eec3b63e1f9157501a732efb55bcdc7c012abc83d101d63f786302054a414df5099823abf9d8b7e9279cf40480f014bd4f8ca3bfda8780f05dbddd672874f91fafd85e1fb81017ecd1f", 0xb9, 0xa3e0}, {&(0x7f0000014c80)="494e4458280009000000000000000000000000000000000028000000b8060000e80f0000000000001800d801000000000000000000000000000000000000000004000000000004006800520000000000050000000000050000ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d8010010000000000000000a000000000000060000000000000008032400410074007400720044006500660000000000010008000000000008006800520000000000050000000000050000ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d8010000000000000000000000000000000006000000000000000803240042006100640043006c007500730000000000070006000000000006006000500000000000050000000000050000ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d801001000000000000040000000000000000600000000000000070324004200690074006d0061007000070000000000070060004c0000000000050000000000050000ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d8010020000000000000002000000000000006000000000000000503240042006f006f00740069006c000b00000000000b006000500000000000050000000000050000ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6180000ab884a9fc6d8010000000000000000000000000000000006000010000000000703240045007800740065006e00640002000000000002006800520000000000050000000000050000ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d801000004000000000000000400000000000600000000000000080324004c006f006700460069006c006500000000000100000000000000010060004a0000000000050000000000050000ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d8010070000000000000006c0000000000000600000000000000040324004d004600540000000000000001000000000001006800520000000000050000000000050000ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d801001000000000000000100000000000000600000000000000080324004d00460054004d0069007200720000000200000009000000000009006000500000000000050000000000050000ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d801000000000000000000000000000000000600002000000000070324005300650063007500720065000a00000000000a006000500000000000050000000000050000ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d8010000020000001800000002000000000006000000000000000703240055007000430061007300650003000000000003006000500000000000050000000000050000ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d8010000000000000000000000000000000006000000000000000703240056006f006c0075006d00650005000000000005005800440000000000050000000000050000ab884a9fc6d80137340d4b9fc6d80137340d4b9fc6d80100ab884a9fc6d80100000000000000000000000000000000260000100000000001032e0000000000450000000000010068005400000000000500000000000500e3330d4b9fc6d801d0370d4b9fc6d801d0370d4b9fc6d801e3330d4b9fc6d8016800000000000000640000000000000020000000000000000900660069006c0065002e0063006f006c00640000000000400000000000010060004c00000000000500000000000500abea0c4b9fc6d80107040d4b9fc6d80107040d4b9fc6d801abea0c4b9fc6d8010000000000000000000000000000000020000010000000000500660069006c006500300000000000430000000000010060004c00000000000500000000000500170a0d4b9fc6d801d70f0d4b9fc6d80141180d4b9fc6d801170a0d4b9fc6d80110000000000000000a0000000000000020000000000000000500660069006c0065003100000018", 0x5ff, 0x45000}, {&(0x7f0000015360)="0000000000000000000000000000000000000000000000000000000000001800", 0x20, 0x457dc}, {&(0x7f0000015380)="00000000000000000000000000000000000000000000000000000000000018", 0x1f, 0x459e0}, {&(0x7f00000153a0)="00000000000000000000000000000000000000000000000000000000000018", 0x1f, 0x45be0}, {&(0x7f00000153c0)="00000000000000000000000000000000000000000000000000000000000018", 0x1f, 0x45de0}, {&(0x7f00000153e0)="0000000000000000000000000000000000000000000000000000000000001800", 0x20, 0x45fe0}, {&(0x7f0000015aa0)="00000100020003000400050006000700080009000a000b000c000d000e000f0010001100120013001400150016001700180019001a001b001c001d001e001f0020002100220023002400250026002700280029002a002b002c002d002e002f0030003100320033003400350036003700380039003a003b003c003d003e003f0040004100420043004400450046004700480049004a004b004c004d004e004f00500051", 0xa3, 0x89000}, {&(0x7f0000035aa0)="46494c4530000300000000000000000001000100380001009801000000040000000000000000000004000000000000000800000000000000100000006000000000001800000000004800000018000000000000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000000000000000000300000006800000000001800000002004a00000018000100050000000000050000ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d8010070000000000000006c0000000000000600000000000000040324004d0046005400000000000000800000004800000001004000000001000000000000000000120000000000000040000000000000000030010000000000001801000000000000180100000000001113040000000000b00000004800000001004000000003000000000000000000000000000000000040000000000000000010000000000000100000000000000010000000000000001101020000000000ffffffff", 0x194, 0xff000}, {&(0x7f0000035c40)='\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\b', 0x1f, 0xff1e0}, {&(0x7f0000035c60)="000000000000000000000000000000000000000000000000000000000000080046494c453000030000000000000000000100010038000100580100000004000000000000000000000300000001000000020000000000000010000000600000000000180000000000480000001800000000ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d80106000000000000000000000000000000000000000001000000000000000000000000000000000000300000007000000000001800000002005200000018000100050000000000050000ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d801001000000000000000100000000000000600000000000000080324004d00460054004d00690072007200000000000000800000004800000001004000000001000000000000000000000000000000000040000000000000000010000000000000001000000000000000100000000000002101ff0000000000ffffffff", 0x174, 0xff3e0}, {&(0x7f0000035de0)="00000000000000000000000000000000000000000000000000000000000002", 0x1f, 0xff5e0}, {&(0x7f0000035e00)="000000000000000000000000000000000000000000000000000000000000020046494c453000030000000000000000000200010038000100580100000004000000000000000000000300000002000000020000000000000010000000600000000000180000000000480000001800000000ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d80106000000000000000000000000000000000000000001000000000000000000000000000000000000300000007000000000001800000002005200000018000100050000000000050000ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d801000004000000000000000400000000000600000000000000080324004c006f006700460069006c0065000000000000008000000048000000010040000000010000000000000000003f0000000000000040000000000000000000040000000000000004000000000000000400000000002140000100000000ffffffff", 0x174, 0xff7e0}, {&(0x7f0000035f80)="00000000000000000000000000001a00000200"/31, 0x1f, 0xff9e0}, {&(0x7f0000035fa0)="000000000000000000000000000000000000000000000000000000000000020046494c453000030000000000000000000300010038000100e00100000004000000000000000000000600000003000000020000000000000010000000480000000000180000000000300000001800000000ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d80106000000000000000000000000000000300000006800000000001800000001005000000018000100050000000000050000ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d8010000000000000000000000000000000006000000000000000703240056006f006c0075006d00650050000000800000000000180000000200640000001800000001000480480000005400000000000000140000000200340002000000000014009f011200010100000000000512000000000018009f011200010200000000000520000000200200000101000000000005120000000102000000000005200000002002000000000000600000003000000000001800000004001200000018000000730079007a006b0061006c006c0065007200000000000000700000002800000000001800000005000c0000001800000000000000000000000301000000000000800000001800000000001800000003000000000018000000ffffffff0000000000000000000000000000000000000000000000000000000000000000000002", 0x21f, 0xffbe0}, {&(0x7f00000361c0)="0000000000000000000000000000000000000000000000000000000000000200ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff", 0x20024, 0xfffe0}], 0x0, &(0x7f0000076700), 0x1) [ 1918.973875][ T2969] loop2: detected capacity change from 0 to 229376 [ 1918.995068][ T2975] loop3: detected capacity change from 0 to 2304 [ 1919.012353][ T2969] (syz-executor.2,2969,1):ocfs2_parse_options:1455 ERROR: Invalid heartbeat mount options 07:24:07 executing program 0: r0 = syz_io_uring_setup(0x4636, &(0x7f0000000240), &(0x7f0000002000/0x2000)=nil, &(0x7f0000fed000/0x11000)=nil, &(0x7f0000000100)=0x0, &(0x7f0000000040)=0x0) bpf$PROG_LOAD(0x5, &(0x7f0000000080)={0x0, 0x8, &(0x7f0000001fc0)=ANY=[@ANYBLOB="620af8ff25200021bfa100000000000007010000f8ffffffb702000003000000bd120000000000008500000006000000b70000000000000095000000000000003faf4f2aa3d9b18ed812a2e2c49e8020a6f4e0e4a9446c7670568982b4e020f698393aa0f3881f9c24aa56f15199fa093c59d66b5ece9f36c70d0f13905ea23c22"], 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, '\x00', 0x0, 0x0, 0xffffffffffffffff, 0x8, 0x0, 0x0, 0x10, 0x0}, 0x80) r3 = openat$damon_schemes(0xffffffffffffff9c, &(0x7f0000000180), 0x80800, 0x0) syz_io_uring_submit(r1, r2, &(0x7f0000000000)=@IORING_OP_READ=@pass_buffer={0x16, 0x0, 0x0, @fd=r3, 0x0, &(0x7f0000000140)=""/14, 0xe}, 0x0) io_uring_enter(r0, 0x2fe, 0x5, 0x0, 0x0, 0x0) [ 1919.014119][ T2975] __ntfs_warning: 10 callbacks suppressed [ 1919.014137][ T2975] ntfs: (device loop3): is_boot_sector_ntfs(): Invalid end of sector marker. [ 1919.023800][ T2969] (syz-executor.2,2969,1):ocfs2_fill_super:1173 ERROR: status = -22 [ 1919.405448][ T2975] ntfs: (device loop3): check_mft_mirror(): Incomplete multi sector transfer detected in mft mirror record 2. 07:24:07 executing program 4: mkdir(&(0x7f0000000400)='./file0\x00', 0x0) r0 = openat$fuse(0xffffffffffffff9c, &(0x7f0000002080), 0x42, 0x0) mount$fuse(0x0, &(0x7f00000020c0)='./file0\x00', &(0x7f0000002100), 0x0, &(0x7f0000002140)=ANY=[@ANYBLOB='fd=', @ANYRESHEX=r0, @ANYBLOB=',rootmode=0000000000000000040000,user_id=', @ANYRESDEC=0x0, @ANYBLOB=',group_id=', @ANYRESDEC=0x0]) read$FUSE(r0, &(0x7f00000021c0)={0x2020, 0x0, 0x0}, 0x2020) write$FUSE_INIT(r0, &(0x7f0000004200)={0x50, 0x0, r1}, 0x50) syz_fuse_handle_req(r0, &(0x7f000000a680)="f2dc9578c61994cf938a7621ac049a6d63cea9535d30d26edbb299ce0df1caaa2d572e7e3f138b32748824c179e9069a074599f8c5142a6b07bd3e7ce9f5f5730cc35d00260c16aea6d183cfab504764e7a6b5ca82062a069826c6a0dd415f723d11e7ad580efce4718e67ef24c2b058a5d5bcfac5d10b96cc5f30ae1e55ac6743858264d5e83bfc6251d690a684153599ce666fadd8124bd6e9552ce6803d3ec3db5c49c36aec21a2f8e83c270a34f4c8fc5bc0aa9bb27990d3d7d7377ccaf59431a50d729cfea9a95192edd372dc611197497d92e42c0ba8e55d60e0945344cacf86e4f5a06bb68d15da7bfd091340eb87c66395930dc8528e1898f6c7231cacf11bf35b0b45373e7b7e81c91842216477966f66f43db170e8b5df42312208748d394c7da23b366ab71a87c6f966ac6b768347dcadd2c876f24bc4c7edf7c792e6a5a154fe0f0699296ed5f66e614f06a7e0814bccdf19b69e1b8694673528768065b3347d9a6dc3bbab2390e3e5f3bdd93cba7d7e3180548091c4d18ff32f598f94a9c569c352568e5e577ccc792e58044457d1bfabd4d569106252bf9f7f389f82fde530468d5c79cd4f1b37dc7f371c31fba401f5643a3922e6fad6d063d590d736ed522ce3b1fa0520727a0b5ea72825e3969584266415a676017b3ab22062acff919b6d2b67dd1fce30af908a95fe9d221b0a7c06b8b51bd7de1748f3f446df7edbbe1df499cb1fb7bffabf9e3382923ec67e5b7fa8d2cf40553e26ec112272858e08919d5ae4e40a88adb207de714a1631a748c028c867db0553938680904875597c15094be7c7f2537efb0581217b9485a6538cfa10afd888a822532c9c1fa69adf9c73a42cbfc88b2fd499f61fd3c2e306ec76205d8ab8155b8e124aec587bcd09b1a60978410baed82afa74f28859bdf0d4ca0f950b474d723f85f1b6056b63e86d52a65838bcb29a238725ed6a05041037dfb32319ab917aa91a911fca8a0aa0e567f3a12947a8ab2f7639928b9d0868e8f842e1a923751fe24fe42a8dfbccd291e6773aa64cfa17b1d38087d259d8a4e64314bc0a054e6eed5466f247618d082b1effa1f242e2120c11f04f068a198d38adc770a356338af053cfd99005dbc42804d13bc0a2b2329f37845a9f056aba133a82b844c59fdbf17cd765563fb79d5ed6d5034365e519947f0d47f3dd0867446898637fbdba769ba8f69d15d79fcadd9207789179f0cbca87cac20c859bd8910c5b590b02f9ad384827306c51651e3d562d3ae450b27b07f989ce333429a0d12898553c08f8a5a0bde11a93dd58ccf66ef37d6b02b5afc1462dd1375037420123f0c1dfcc23e8c29a078ba09e829e7efa9a5e47a98f776d67f4cdd948083b213ae88565fbd69cda8806cd3b5006cbba3f87a13925f0ee4d3b5428825fba78a6664f889df80c9997ea730385b88a1f3142bce20c253c2bed257097eeeb63836c65582187ec19b376e1a2c786f4dc4571e9a8cd9015d13fe8987cf5bc269a5fea8c1a77b1c11dede4c09a315a31a0d7e67a17a28675742f66867b7588714a33a4168bf1da227c2d0c88c6edc5cf9c265bdd34b71b3fb87a14ce2a89dbdc56fa4a8664d6b9e7b717b8dcaa3d489a8d2c75ebf03f6493afabb516ba71479ef8aedf651f9515eaa44601888ad2438db03eaa1c0f5f479087f3aa22df5dae1984ab59f17ea356f4abd802eee24c78d230d3b5a54faf896bfcf881b9badb4e84a56f159e5725165c041d89b8534c48a751bae12bb2299013d301964e7b8f27f941db96c9d592e886972f733ff15994e54727ca4cbf884450933020bdd8dd0889c8c1ffe566d58d9e9fe6467f453b21f88c49eb6007816830974829b0732d648e5dc53eb4cb51f10634b48fcdc20af089f92c4662c6c0c4abd9cfc165476d8a33d5861bfa3722a7d4e36283cc79c2d715797651a3b77d34bd34893ffcd8cc78df5dd4d4234ed70e4fc9a8cee4a7bb8eb7a07eff1cc225786c19564e3d374943b254a166f8a43504036fa0288c7b10b1ff3b5684b46863fafa0338c50fcf7daf4cf5f5a742808f1d0207229ba0bff4344ee4613d606a101c47c07560cdb0efd213aac2e010fe5bb183193541a8ea262cb3a3e2c543d93c76c9d80c1713868681724822e27a80ef3289b874be77680f6c7fc6384a8a4740959e365976a01029a9cb27484aba0e9f55683856ca2848797c8b2846bc9a43ad7f1d150d4d3b4c1e832a34ad83d3e56d7c3fcc71d02f7daf7e6b5a1704c5550577e1f482efe3f5446aaa019f9396ea63b9d14570ba3468cc25145307c9d7dd4447e400d087f46467ae3a98e6dcaac53f6a4d71ab6ae1c45ec15424cebe7cf1dfecdf8fb2404bda64e229178b0b199474e79659fe16e96e927be38a3a1b7d9a2aaa7933d627a3010482fc32e06d10a6438577280fc08bfd954d4c7251d3dbf99bced67c1cf1c6299bd08b492ee8a23723f7d45e78520a0bf889603f20add15063ef612ece4bfc1a31c425628248e4d8ee261a0fda95a1e5ca1432b0f23ff2dac77fb97c62969ed41728f02a1f2ac92d9d344076384758ed89fbda9fdded9a6a980a5161b90f840397fd21fa3de514bf5a09843a9fc5a08895c6d5e416d836fc76804f4163c04cbea5a9bf46f1e1da583e8c0e1168c1e13c8a2ab1d1ccec531e2fb44c01652d92127156eed652ec30ad6be2e7ca4650cd3085603a848447e32b2e7001959a5bde0e28ed1e1962838acde3e521931e7f0355caeddb565dedd2da5920c0661a645e56f9c5506aa53552a042ff8ddcb6a3a166d819fc728483258eda01ba00680c99587574aa20467421b208ea987e4a009981b752710a484babc7b090112aadb589534eabde01a518520655665e02575ac70ccc31007ce737b148d3e92a52d4ea651f951609275734bf82f8c987db1803559209660c52678094d94ae4f4b6d706f847c09ca69c7fedecf51c1b2386a362faaa2f4ba004bf80be503523e29152b24c2709070ef8c79059252eff39c300da295b2a246ff8907b281aedddc2688709d20ae65551f91c86fbf37398eca2cb8d760b8ffc7f3592ed30dd2c88f8f518819cecb4b094e808572d50a76d3d7365cad98e8c9348361e28d98f44c5daa382017548bf75ef7be9f4d836932a6530204fcd2b7b0e1958347c1396e827ff5e63ab07081413b2e34e2e4964f82772656b49d0f81ac99879dec266019fe7794abf95dafd63e069fc1662df1fae47e90f4196241bcf3235181d23b37cb0ce9a352afa5ccc8fc863e1e9f7ddf5cd4b123a1360e7fa6ce1885afa332e5b50ce46a3cdde2cf16395af3b3b0ab8b8d01e436d08e112f1d121dbc64a503e50e47d4af2d29f7c2c6f55ad224da459ad765033bc26f398173c3bb80137ba6a21a5e87c9c5a9eaf41831b4f8f225aa9c64f2e54fab0e0f75b06c0f42fe7b6f193fdc5f9a6b24f910d08b1f6bd1aa6ac8ae7b0c397bbb80931b28995aac03e53a3d1f7afa034b1887e374cda3917f880171b53d64364633eff727147bb673d1208eae02bcb5eb2623e826ae46c4464297e79d0f146ae31dc8d684e97362a325a77d4fabc0dc14a58f9e538e3fbfc689049e7c07b98c9c2eba5eb3e37c7eae83c38406eae03749fec1de11f9dda4e6fc3f57b3daa50d8cb6135e58b3be8640e85b7f6874c7a46acb95d6f1702cfcf1ce53646e94c90a36660e343d59ff886e6d16848e149f0239135609caf2381df9c5693b7437fa14c9aab495d70d1945affec2d97a0a207a78b122e2d45631036f73c63ea2cc3959faf31b8a7906db710b733f3ab44e42b01a928b8f7ad5d741cd4ab0daf214c9c08acfac158a9b6b63ed9f6e2aec941154a08e01338c1825c3b1a6482a30bbbaf7b5d0db3a3a7446bb540136ef5ddbc5e4d376e2455c46b6342633086a0d683f659d5bef13a019f76597441560671c50ac74a1d903dfd37a08e578201e5116e22d79ad8e58d2e6f0123d5f8d50fc264fd993f0aab1adbb920bbc31ed062a59fce5341cb682cfa78d1576106ab1c7a9b0efcdfd47548986f8a17ae737ede69ecb7c417a4d3270890e191351d841ebf330b267e63c4c4add2b55a66067fb032f18a8647ad0493d2c841a4921807625178a99ca9663b11c051bb0fb6a05d4365538d3131d09174cca1954d57cca8c1c8700312efb2ed0c139af9dad373a7c45b24908bf9141f3c85d86a1605cc035b98866d32e1866808e21f1c4ff0c3b917a63b0a6a1fa8154e2a9f91cef23667c55e07629d49d86d3f459274e549f3521a34f62e4c9a7d3546eae2c7a230bfba1d06ff2906c90880c2d17cd01ad2a8f7dee1fb54f994b1a2d360190f31676787f9a4ed1329e505c961d73e7c1c6296215ececb09b08d71fe81b57f4dd21067bc3680e07f7c0ec0493fd86c3cc4e0ce99bc712547799a76ae011c118a0c0a038d49227f04459957fdce11244f03fb75bc9d979e46ee5e36652a73658e2430ac16b0688794440da15074fdde4cc64ca9b6c912eeeb41c424216222ecf59611856f79289c99767dc273f7d4afe46aed4f538e9231b9e55bdfd57f427437a9fe5453441beedbd30a9b61bae7ce36dae79a260247c51d0ed5e92df31b114c62b201f9b1530926362eb447c57fe346213ca9471ff851b3a78274d91667fd8a2142be1027c641a650983685e241ab3b7058e6fd9313e9aef348df5389a3e5b5919c2fe31242649e5fb4442d00e114bcb776d21cc70c13e3f0e6445300d0fc934087c5d9858e556bdf3384cad33fa7b94f7287c13178d7e7f1411888945d69aa3afb805cf13f720a59e7bc4e48da029eb97b0b276342f88ec6a997f13cd8bd3f2abd1c317fbc6701ec8e2c89a7f6db91899c020478b714a40fe01b9e30487326e435d6c0643c90cc542e7ce93907f513fe27f217a597adba58aa89e8f25b9874923ca2a9b99512e1ebd7e5661d2c460709713ff9e55d22512c4bb4380a2023e0f62ba2265df7023ec7e98b52bc7a9a20030210445e04e03a5706bf28136615319deee46b0f8ffc63a2596f81edb161d85d95ea826b4c56cda064b7730bbbabc1413c5c41951a811b9079b0e736a8bf34a65456468a4d4dcfbe07ca92579f72e2afeede987bcf6fb02cc85383989344e1dd34dae00d7bbda1055c69cbb4b60649ea0f2da4c731a1deb1fac2db5a102d837de2f35f3eec936c9f0b8a90ae62ea3306200204cc51552174cc72f9c97b55d9a1c1de7a004ac5178f5d8dae3f2643aea2f0593885593790b2d02a5b779c853807b3cf933189840a67cbdc7e064a92021d01b43c39259bf253b0a757fa16aa9b7007f9404058dc013f213c10d983bb6b37b688f0616df2675ece9c2936e800e92d9fe26c384be24303ec0bee74a870313288728a6cfa9d57b8197ab7fdc34b7f1eed4173fe4048e2bf822fefc461e80ad6b2e82f9e5a2829d83bc5715adaf186a9db625f895b378ff17aa7a40247f521e7a74e079a947384fe724f8f123ae6941f5935fd90cd821733a1a26aeb951d66239b4401a64f220d3a3ce24c0c60f177a2d10dc1b8b0e09426904d4b7e3fc6be1facc605a2a38af320e3388b71c21ea1aad83dca11df344507b91f73c9c50f9660679b640955b6a54b132861ede6e0932129b18bb15c4028d1cb58beb8e047c0348710c0d2a494ddf22419255808e84b7d2929177e31b4629ceba2e430b755d5598d3979fda859c8906cabe406b415440839ba01a7751101487a6dcc72a90f521f036046a9c91837727fd544f66abc6e58259f18211ab4f60141026d129638ddbbc197fa08102134b9a5e84d1b0b68f27b15abce8cc1ab54758c74cf927ebae8b24c02c0568b99ff797dcd641f9d68f824f8ebac0c7bceca8bbd9b63f6276c848203c4448c8d302570a2238f1b4c6e7bfc0e1eaf4efc1dc271f1afee07b72232b3ff13a3db39cc700ed77783f43e746c1375f35152ef7349faeb76902ae4a5cd8f8871b89a8090600e5b3cb7060ea6ecca3a47a8dfc6f7bc02b4dedd17f430caa24ece79bc523af12394a6b3cfe663c4a227e64fad651033e97cb5c787433cee6c802ef569d453292e0ee46c5f8590f796380739c4c3bfe9261e1aeb0a4a63b73461723f5adf06c3d172d6e469f7e21706ef9691d02ed380024efedb8e896cda700c62d93dbd0c08a7a899fc84bc32a9e5b502d853e5126156f6b5c1d1d776a0a803050d3b7e29092311b5aab80067e78894b93a0c39cf9ceb846c410d8fce9b80968258a7aad287e30575992741a78a71c477c284d56ff0a7a092e7f00357442ee53dbd097626f5fe37630ac8f93ecc0e165e9dfe13c9beebb57c7acbe9605c13617d8de5c57371bb4a7a89cb1178c426c48501851d97c302b0c5284d2474ca880e3cedf802d431f8e501eb3d096bd39baf0f86299de7608170e025f395a48371692d88f3385831172107270aa6e4e7c7aa4b3fd59d195be24d82ad316e1bf15e319c118f7a680bfd4e7f08d1eade84e1e6ed239b9a07d78e2a318ec5b0b7169e17af6935640cc5a41b7357e477d5e9039924e10bf21fa8f44a8dc9b4da928b361f2e0080adada3ce02dabc76e61b7eda6205ad824c80718390de2754c85287ebe8da62042570411cc1c863abc9fd26c120aea4725ca0d3c9e673872f5f1f634c08bf80d3a60a28958feeaef259f5d35ad9b3c97eb4ca9b817207f68883e1f01810d6b5289813423bb81a9b1833e18454fe0e8a08b490fe2f57ad71b13796fbc8eb09128fb6420866253fe075bba071d8a6bd8aea15c44623a8d309a3603c1fd2ae52ebc0f60ef538f9f4d4646701b8f964ba80776681531c8eb1320b2f73746f3863e5c066fe27b61f0589bbd85be52ca6da7cd886366bc0dc2b97fd02b581d2af5faa76d58c2b6c35de007528755a3e85665dce4698f54259e3fb9a2066416a328f8db55f1b4db7d8b6ed4f45d128c33d58f2c34096d4c1e8ede406d99d50e04ca25f8c881051e35975471f36df5876827aaa91d7a572901a9d57ec18a36e3324f9ec617e64487c62e3f744610805184fe11265e608601e4a51bf8569f99ed660e6ee48a7beeead371dbff6f06b6a84d14be3eef834fec6a8fa272ae6ce621ad757b534da3b7404a4f0d4b258c207bf3fad8ee8fea7e9a9f80d2fe4cc00ce561663c700100ac37d87b39c02e12c4b35314b51ff89b5f9abb474bfbdc4c4151a77f2a046ebd73d9d97177c4484f49a39f53ae902582a00d87b4752ae30a3e3f46893d37eacb82f50c1c769a068d55030e23689475d360e9b4c5bd19619ace6c46b0e5a952778b0174a816da17f082decb571652bcfbafe9b3a86e85c6a36305a5f4fe86c2c4b942240f1bfcfe45e7e36ce703dfa94609e7c14e83af8d74d7e6f26ebb00f9d9d4a8e047181cec102a707580505de81275892092c97d1d6ed3e24464f61bf1289d663f807c8a5a0e8d401db0d693ac818417f8c5e7188497856535e344f085e3a51c08f0ba6f0280d9082c87cc911d4ae045a772b2034d2bb0e107ebf8134f2273c7997a6ff89da9f5aa809dfe27ccbac8c35847d3c1fe4d1445c0ce774e912cbf1b2c54f8cf39f4819142901fa54d6e906944a08c8b3da7fbc854208c9a045619026175cbc0e4ea27c8ab2f37de842f2dbd824ca6ac9dc87a8ff83cef67f55536e079021bf3998d2a64b7feb86c0167b943ec87d8c9d15f377664f9b32cc29f7701da0c342c1b75063d635db276fa3970b704ed7eec18465302e9578e61386bfcdd45a155d636d328b04d684baf6a792e0a471ff0ba234036cd997e6bb64f9cfdf3148f67bdda3ffb07c7d3812a156e74abf50dd0da243f0c920a33b9af24a1afc9bf4d47ea868a1efd9cd09c527aed1ca6b5de6f8be949641b47cb5de48761c2b673d6f6f823cd7d35ef19124673d534586ca572c69837876ba8ff8288a3aba59c35344732c8a4e5516a7f0d56d1e119299aded7a73c20162f16bde35d5904aedaa851fbb2176e23efb33d0f0c8472e0a89334740890e1cf892ee79f48ef30670628bc0cd4bf528bdda4ad5cd7f354fff227b50df83fdaded1d3d1f31719853182c5545c21091b02c6da0399d8bf62acfec65f37172649b45cb6a0859d427d3e7cc37b8785797d59613641fbf434a945b1a2f2cac771054f7f6133119e26e57a92a25dfa18aaa62ef224bfc128b1ef86a19b73153e614d35910cc65a53eecea098bb00fadf200c2279790e1352f53e99711832fcc56f5e71116c47d1862c4f85fcedcdfb5b9c03c9e9ab981935f70cfaf3493d541456f7bfc1aad535037f113b63e8e93fccc51577952c8f932f1a37c39e622c4cdbca5e1a1b44bf7f834a76fd121a553dda38152842b6d34f0098494a565d6a6538ddc85f3bdbab505e3ef83a8a23033d01a2868c50272d0f5c03a7f3bf5e0c8e0b11d3a84cac2bfbfdf4b2602c47208437ecb16c2161e3874085b9fe863341ef99c8f4d366f766ad9e2ec8750e7482201bf14e125f7bfe7f19cc602ac0b96a28255df40d41ae15b9f1596b99cec3bee65444ab69f76e299f1305d039672a8b17cb67e22c93fbd7ec83b828f150bdcf9f20a3777a98eebf3d449d6f75a58629fd1315830f0bd0f77f5bcef20bef126e1923a8880ebe89a7f74c0f5a49dd1cee881eabd2d16368075e58d2f4f00f72b0fb2e44420f87a53c0f4a71e3bd3061c9b3540bd1a781c8d63eb7d0c9f172ebaa06d355e94ba6fbd101ea60571db2f079d12723ac30600e14c7d6626affbe3d445289065b0e3e54ede1d4236350a73fa5c9c53929f2354fa9a5a307a94438f3a54f46b0073502bba972cdef1ddbfafb1ed7c05802e082df4530e0453494a6e83f0406f7fce48693f66332111f711842e88ab10dc0d731370b376e4a2376537cc63ee787d9c1b1ff0aedbd46595dc183c1b7263f237d3dc96140b8a84762fecb76ac20d66ab9069795b09bf66527b7bff4e6c57a67c43139745c7fc1dbec49211daf66906ef4355dccfba3f504b3bed1ed259a28f7f77fe19b361e3189ecfc2b06f732c4dac4f6233920004859968b8297ff5c7b79e30c4dff8ffe19228c78416c98e3502e4b209fec3933f67a3b09b5d87f6631c70aa7fecd673e39f6540b80ebd56d2afd95dc08174abed36d6e48fb8168b980b61ca91389f150e56ec749806f729edaa0cf1ec4d2d8cfeacb47a655407109a4ca2279b23b3ccd44dc2fe64028f90fd58045a7562e55d9299f8ae2014d67d1cf4728c021f444a22a4b99a41b7fea3d479a20fe6e46674b064de2c45ffac150bb20167dddeaf8e26fa675a4e207f993d7ab44df1150b1c66296cda640ab107525b9c1a06d4523df546b739c49e010e8138cb7402fb88e28effc9c95b34932fd5a9db0a25b07be551f9ed3776dc8317a3582ef659980ae4bee6ae1177742d25f14f16ec0ce0fcce83939ba545b21b892d3e612d1cb8b442d5d9ed802923e7fbe766f2a1c280f37f82602595d77cf0c17fe3085844fe609768883c360ea090a71300c50fde366702da3c37ce109e6bfad0b804db1d512d47334a29f390343b37e60823297f4f39ab989dc3e23406c13c6f2f0611e5ac4259d24629f106011402cbc05e043bc1df4c844295db83663d67e3cdd857dae13d878058af2d949e535236739cf609813f96ee44a76d6699f417167e032d21750b8d7f04b9160c3b9c851a6c82e24245230f6faf73db5d544a208620a3065a6d07744fec573b674d4911eb8facdfe4b6716d85c5640196bf230bac72c5fafad38b4f4ae7d50573924ee60ada2c0b8d6da3956835169bc8e2373b8c9ddf806567e9bb35d60e16a4931f722fa98175c46280b15f939d7f92041a5102d7a9487e913a33d0ce9b13b3aad59351ff5b0671f85f43b00757ffe77d14bcf4c04f284271366b8774a5eff78f9432b26fe9c9bb16510ed95b12ad0a5ac37039cbba2c2742e278123b4e5e40bbfd2459dfd986febc2025f93786e1ffc458e7b2a41e1f86b06dcc825a26249399f1d673459869907af74bdd6dcd48338bc841fd42648844370d3d42a3bf0dc16daa8f63b8a69f50d442e0db42031e189ccc9add1ec7f74427a2b5a8675e93f033d26715f9ada6269fb72a19098799f366f01e8b8d9e92c34b2a22d164f2aa0142d42ebeaedaa2d9aa61b249b1422326f32b8c60bf281d21988909bed50f7ba679e9899629b7e654b8a5df01ec0fd3b4a5a2a1aafb1d84714d450eb0285df9b42534f0fbdde1cff9f9768c2cbd0512f037c279ec7ff5b49f7cdc1e2a5f18cf7414a3050c0bad5c083e40baff231aeaa21219c170149c0581705927e8c6dc3bd1f256aad62c6c7cac1bc165d838d026db317d7c0861381e845f5388ae356e9482906b6ce778b3fc55eeb24809b92836c3ff94c28e7721b6bbbdc12a9606615e7c6fc3af4a206be3d87ee2a5da0685f41483aa1abe6aca8b4b922e14260433091f2d9f975b3c2302b9237327f73d43e1f92e9bb635ed51878863263882c8361b3846b926922884a81303e2196779d25843f65aeaadc1dbfb18e538e1b603c74f5fc37846f9e3a16a6344a7f9b931b06cd0f09a70aa3a2f12535c2df5cc59287720feb78d3056db023ae3bacad4142af3b8d831e163c0d8dca28449c17401c379a43f1dcc53188b82224211455341fae1b2ab4f2fa3ec8b13c4f2fa75900e39be7ec184496af2896168ea0ee74e9233744c84d0b1c4ce7b6368a917e3a3049006355611964c602d37a0f66e8c5a3abdaea91fc6573146317740ddcc0ccc9a86a8b46bb83fe0fc7a044c9326baf7f5e12965c6b011a803fa98f0c8486bb8274cace633ce7815513c795caab227f0f6821e62d77beb040efbcd56e1017fae03a54f1069a70088b669f7b0c8df204025bc268794c6ee85bea354602cd05ac51323b921e0ec2c5d5665c0dbe59206fa506017c5a1a0a258af6957e155b10b8646fe53f21cde101d421acfe89f4e65058c2fc6bf2b368d07ef8f3d63b18704379372b625e96cd0cc7e8b7b36ac1aab4cd01a62bca05b9c35e6585bd2dfcc6ad2fc62a0e1ee6421632f448876faafad10d2e1197ffb9475dc3e36634f6de485737a4f39863dbb922ab14e71180725f402cd63a9d5aa6bb59c596bda93a835ae47595dd7994b32df18a25ace7dc14d2633b46162e4855d0eeab629e781f8aee820d02db24f41f72d8eb16532b675279bf4665dbb4068c33ae4fcc9ef76b1986570f9afaa5525d60fad92851c83119ec3aa450a07ae8dd86aafd2d7d4db8947c2c61b2b421b9b17700843296de0acbeff6eeb1857c3410e8bc4b89288c39409062df18ea4f9bfcf3b598d9dbade69b8d743090e346f2b629737af6a9e78fca2307e6d06011f02219078b4b16b397b97bfe5ed963a0685ace416c5612de699f1c2a50602cbce8c91f60cdf20886d253bf95f9e558b1801ed1cae9385208bb1dd6978e4e70b0d38d3c6563ffe0e40f2f22d46e87c12b22a7cd95f7ec9daf33a4a3739550e5e8b8855bae53f45f7ee589b2f24d8679796170cb7288395e42fe6c36fdeef3aa8d12571a0676c379ed200", 0x2000, &(0x7f0000000880)={0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, &(0x7f0000000580)={0x90}, 0x0, 0x0, 0x0, 0x0}) mkdir(&(0x7f0000000000)='./file0/../file0/file0\x00', 0x0) syz_fuse_handle_req(r0, &(0x7f0000004280)="b936b4f16ee763f4059aee2fdb5a611d772b6ca56d1b682def8868e738e366b3dd31e77c3f1dcd68f992fbbffe08c6f7a73f5ad6a628b7e0ae8d394fcfa2c9d8d7c9f9a984436a9c8e4352aef9043eb3dc0305333952b6294f017c27128d53aaa584307ccd72cf441276bbfa2a7b371ea257145040cdfe1cafba2f5c03a4ff75b97f377a2cd0c4101a6ad7ae3401866cd97ff78a494bf6f1f144c71f71de83bb7551f1224670694ac03ec30444c1e75a44cb6002263ad2e783522d62044131d2ba7969060ca9b2708c3ac9eeac6d58afce6b544476e9dd3aaabe36a94004bf5ed6ff1b3ee145b971abcd1192dbab3bbb319e8e0680c9bab76e7f8aa8c0f2944e918cfc260020669f20159c113d09d38d90d9087f7ae98d37b9348cf5b8541578715847b6a233d0e8cb12f2cf01d2f8290885ab88f6fd9c72838ac112e63daf77c403447b03329b1f120e910b7b2de6144fc3ae906f5db93669c8c741af3ac4f71e2f952277e59b2b57700197fcdb38116b1aac162b5a50390718b4a4975fa27505915c82ded9afa4ba2f7b0571df5e234f6785f6a5c4f4260b25ee6008588958fa626861703cbf055b1fc3b767ec39b6b2b9e73a53510f753e459a59568fe5013d43dd81f6f3a062eec2e43cdad3e7225d9da12a149df37b2d137b5d85a0c86feb46ff6343ca1133e119b94f080f5127bbb073f8e84667302acacd7cb4ec6e46daebce766f3bb1d61e70cc45ea0c2815c4004432bc57ba12dc563f8488d3f9864b9ab15fdbbdae34f7357e91f5445b01acb2df8e20b10189b232d65cd2a2e6e52d6c4d3924663b83d4ed226cc4ff9a6b41650bd5eff2020c8f72c9549ebacd9f4b03b51d77d252bfd158f7a39c11583b238ad4023ee0128ab3c0583a7b638e15435397eb34f9c24acb03d8b3ad5e5749b45f6803ab96b95d32f37e4aa83bb735ec49110a3a106182695ed4e865470b655b0095a2b427650f07d847d544bb96de3be335b4ac229521ecfa3fc4d58dad885952931e4ff50f4f1d1d1ee8e1da49a0a19518cdfbd9ae0de604c1af5f0b0ca2efe3d148af3abb0278a8382a2d8ccbc678add3b9685291286feece123d9b47b3113aeef4b0422235284bd2d1861bdfe38f2d0750db6ec7474ca545ecf2e182c7f29fdf2749b9f759f32edebf96b4a33100c8f1c1d4d922ad56c4c4b1070e5d1884bb72ce03df1daa025e96e35f594d2bf73d8b0cf5559223212b83065e71475d7954833006050a0cf35d4eb0f7b189c9936a4177360fc8de9da68f5a0d748c979beedb8ee9d16b46d48c16bef05dd51b4df9db6c3546b5cc6bc3fff9788f4f07f99bd98068f347cb4a31a08323293e2994f0220d875052bd80086f44b07ccc02f9e8f9610ffd5b9d3aa19ed6247702b21ab6d472f8fe99c97f98238fc73ffe9908278bbe92efffb933d565c907e8640604584442846e3f17223b5f9f1766437d7f60e7260a78c8cf6d094825a1229d84f6efbce4e751a511f70d88ada46e3e3c8130571ceecee9f45ac802cb8cba506e0ef10322f25aecd972ac7de6cfe7db5fe274c0da083c0a4d772440789e765438045231e209b5b53b1acea480f0876e112c3c6f4863b0676e7a60b00cd957f893f82ab35fedb539024272ee43f552b3357c73f9612838987b10730262fcf359ba03e827fff425544034f7f9dabd8bc8168058ceca5e3852443e35179db4452e9b0bafb85153bab2182342d43d947b6562b469f360ee9ada067ed843eba73f920f5590d42e5bd24727a012544c347cc0b71182b98008b25ccbbdfde3cccb7f75eae21931c5cff372691807beca11124ebf069afaf969ea7e46ef6a10a45aae457f60b5149449a099b4c9adce1db24eabf7d7890e0bd9f7a1c22e15f56a87ed0fe0d299fe52f59cdcd0f91b7762d7985c4051df3ab25cad5d6582abd7ab739aae540db52d292d9964793b46367d14e6296672f346e2252beadd87ed9f2b9ccf6bfd3f338d4bb62bf7b413c04ca2ed5c1eeb32d752fc19e50e2c30203184f79984b4fd6d35ce3b4ae5ef3fd4250a705a0cdd7576b62bdf11cf579fcada58330bb6c0530c65c41ff05c7370c23b760ffba3a7ef8fdfbf575dc7a67571f3cbee1e45f8cdf5e02a70b67978ad0d33505f33d62efe301ebe00c7181bb3b6d145a90a970db0edeeeec7be7ec88ebcf75b5b1a866f86bc9a99b916bebd9ab88be1f3503ce3b029a78249bca8fe4f5faec12127b03e675a172492a53dd4556884f394b501c5adabfc060a73c1205a52a5bda9868617075e589042f4560fa55ee57f4a3b9f60989622be219cc57fa0e24bee12b6182db5f5dc38a1f569d283836bd8a0b26b1f562ed72e33ca3de2ea109b4499da0cec2e964f7b1aa020517c168bd85d3ecb2cdc36fa445706be81d9ae07006bd3f86728be483d0a45975c147f4dc480c5921130a659bfe0954dea25434bcbe0a11ce3fcc354c874875ed6d421ce14cd078e9cd1a3eecc74915f091863b5e91ea253c16cc7570962093289ebaf6f2f44b8edd917253012e455074c12ad908fd0722017667eb74c271903bdfda65aaba18ab6921e3e0eed546c2ee2006ef6205d59b2f04da48a951d24c326d7924a5500b33706cf3c8972f6d9ccdee7a9b4b96f556c1347662c05b8663e7f1e3d1e703c1f71693138242783b55e6e176328f69299faa5fa93908ba99fe3b4e9b186a59c573579e3ca8926d93ba9337f51a01e274ba942a9643ab126d58c6bf7e07a2332a8bbde862ce94517f670196df4786270ba7e1c0c17e957f2b46b402cb0597a9b1928051d56e875d76fbed3a34afc62aaa92c050577897eebca73d4d8c56ee79a4b9f5b178a0e0af46b3c729620c4bc70ebf2c173249f08b182be902a4ae8ad82a356512fa195925447f8715e11bae08a51966350ce501024b3aca616ed05c49a87327423cb42d73d838d747f381c69a74531a521fdfd664b1c13a353f43ae43ea2527fe62dcefa4c979c70340ae3a989d6e23537edfb893a0ef58094b8ef5dc306631c003655f3c3362fcd3b15997a8bc38ef726cbd2de3d4273f827a3451c46ce7cabcea216d948529e32149873a7cd4d969dd3faee1bcb170ffe9b034535d4281156eea56a4424e8f6e6be9d9e24a9b9bfc23cdebd2c3a6d0615785374c39d101b17b32ed60af3b7330c23779e6b31b347ddfafa8e896a414141560f229d1416c88234dda6bd4828ac5de5730a07c2a737cdf2670528aa15bdb98822f922fa3c18cff86d68f60e6f04973f314b54807b0a7e1077df9fd8eca40cf0acd53aa61d63c709a98d31a5719ed2e962b8e666b76a2f377794b65f9b5a61964e4de97135e1034910ca72f7ab262b0709dd58869264be463d3730037e20881fa33a276277b0f95b6800dfde415a082d2547c0d0e31eca9bb7827d0dc6f32c7396c13a044156ad3635b8274a6b2473661dc3a375f9bfc94f583834fd0b7875c55eed735b045365da5d6de4f598f5f7a84fbcb58b413c58bd1aab22aa63671424dd0ddb431a22f0fb600541e298db1d79a14a065c98b516ab43ba7faad66c1dbea91d3bc3672d2ba7842068c51374c093f72d49e8bd5872e76e8ecd92d494a43e60963caf7d85befadcac1c1f1b2f2aad00846adc795925e7e1c55bab79b0304799ace66ea88127d4f8edb70e96bf4757ed0e80e4d222683f932779fb1846769858495331051382b9468289219b0df1825a0abed563f75527e8187bf4b53c5076f0b660fbdce49460dcd08b78fcf07f99d984c478f9da01c7ab7824928be871f633e9e24702574196dd8fbf009a3b726590ff688036e777aa339b04445e0f7868a0020245c879a6f71d5284cb9a7bac80a808764a3d398a53d5e7a7f2ea1889af97ad7fbbee5e3c8f130e6e59da30a32abe57999ed21149bcce3e4383559003c1bfbe91d5d84384b8c11d02d1480980b63150ea885a05012695a0ec7fd5120fc4d92d0272fa14461851b3b3b588bb5342dc843ff56f40c29cb709e68a2530a77e22c4217af7900c53bdecb812df85d3a7e605de9ab6867c21638257f850d816567a8a2397ad555745e55070a2a8762ceaa25f0cfa69d205e9bf6f2c9edf5495137b7d04faee33efc390df26ebf94c7b82c14437dc055bf40b407ca9781c08e02c6f142ae2dbc1e4aa55dd1e96315ed1d3ae194f99b2328fb92b94ee5b5afcd1c0b37a709e613a308774a692af6a8a178145f98895aa86c0e42e4e5603ec229b50bbd06aedfa3695f253b4c6e94df246aef7577e63dab8f9f411901b354c07a439ebf85cdbf57f477e75f589afa7c9f7208462338a95a292ddf0f61b0e4abecfdea3a4acefdbc0df5e937a958474ccba5f818eb843ae52d161c3745d171c9ce0304fb7c85a18603b23a1f9eb7f6643aa48c82820b92f0d3c500e3d968f7ffc437dc521c946c7e12d0041cb476a6c116c0e84c473e0ef1f3dc5d4b2e245374db58c80de0f8a8027cde295dc8f47cd0a029697e5597e53131ad188ec8ba09b2994152fa7b2e05d2d30edf9f78a40376360ce3bf0f8fd04430077d2ced937dca8f62a1d024b54ac34ecd63bb4b689684c7f2bcb7150d496b66119a0f09b47ebba000737a6f465793ee79cb4bac652f36bbc75d4804964c8fcfd406b774751d1bfe87998d99f80bb1c4ed783d190b670bf6c3539547893c26c2a7b1a793ae8be1f31982287a8fc033b99b03075c1b589f73f78e61aeee9296613b4453b6c809dfe7c520d014aa7a1ebe2e46f31cd3847bfc79e88e9569a6b611c0962e57c401069046a0659fef9fdb4c6fe6e110edf99ffb275ceafa9234bc807c3a02e4b1c7d7cd5453b86376df436378e7887676b008a8f9110c0d37fca42c484eb7c66b4787588245ab95f510f6067d7bd41ff6a256fd17b1a0e426966d94f937050efdb184ebadb595e87a5535b89e5c7437181ae089298892afcb527b21eab46685395defe5ffba8cf6b3e08857af2f9c6db9494673dc14c6f82fac16e4a27185d32e25bd4982c89ff622425aca6531e8a0d78afa3939793e77352b34bd5796b722debb341801fb0a9f3dacdf3f49f21ac28a472d6a17691ab1c5382c41fc8fe8679add82547fa485108e920be5866690b24ba73e4ac73aa8b64245f9be0f4748a671a3fecf9b297e5c44b19b3e092ffec942409078a89cc3ae4939b8f91b7f4891f599e68de56197a9e85e42a279b3d36b3bfe937dc56d3f4c9e5c0c697fa03d69e8408e1bbdf49d81aece00565657ed6fcccf723be514d7b728f5f4bb1761454d07e6769ec969de454094a94da915fb8bb5cec855c3e9fcd3e77c590215d98aa88a9cf6394127799b47dddf494b387d5b0209fe195f6e0024ebf52225602df846777bd297c6c69ff4fdf28f15b431ea39d6a46bba3d31d82fc666826247922f7c1ea20a6cdb19adf3c1f879f21112e21fc9637326d4b91007e89912f0d958fbcf4135f72ddd81d861196916a60d483c4d86c19959a1c7a92b6d0e51effc4deb05df57a5c5e444d490c2040ae7263c50540d7d9ac213207107887b8432ffb0b39d453443aa0ac107536e8cf353fc12db53fa950dde1c5700864c8ebf7df6cd6aab650be658ae9581d9b6bd1a2ab072cd10fe644cf7f43c8a072854dfd0fc84bfb170c35fc8dc4ab4c746f4326491f8723336a7e19debb4646089fd252577bbfabd538d8c1ca98c4d63b33adfc1f9ae5001589335ef5a5d24b197ebfa1798030ed8928962706f0af40545d1fb9fa1343deee8ce78fa4977aab68b5b97785cb940e7eb6b80096fc31a5284fc2f10becbd93786ff3b33f57db979464d2a54b677981b6db95962d161bfd3f860f0b22075c6a50897a9c342a479f81d204dc917832b5a73341b1c1241bdcb6dc7d8c711d4eec290d980df3f12cc09cc06b1528ddd6f3f1f41859cbd1dcfbea457bace251a834dd4629e5b132582dc8b9aceefe3e48a66217ce98d72a1778f18486445e4878fb6529346bd83475bc42fb06b196209293eb4ed23d8217298deb8c392e8f0eb4df1f2014bf855aff8fe010ffd5dd3da8a77dd1d25c70f835e5cceccaf9ed95b1726abe70b4189e8c8ebcfbfa45f7227184841e6aef3e3e7eec37f9832507f7572cba814c5478546b22cfb3a8d0300f68145c55f6d425417bceb5b24a9408e4844f6a6a3c143f36ca701ceddfe44fa496453c48d288c5b6f08f1471586659d23c29a255bc2a8d0e1869bc91a9650d018bc3e20eb2f7089e29977faac46020b01cd01fedefe484dfa617431f02a106931410d64ab365bf8ed068e0235f8d2757fed289282686a55dd15a847b758842710d9c483cb907beceb86ac35a240dc3810320137cad68b451bccd49d7a285083df9d5f0df8592b0267e82dd82aa78155c26d26bc4faf4708927a114a3d069299a488932635bb46c96cf3678af463f960af3e750cdaeb322e10099adb7e3a966c43f68c32923fa9e70bc28f98d9ea54d24f3806ac9edea3206def17285f693ed52f26e39ef7dd91924a0e09213d9f2efb7339b7edb6fd58f6b88836d8804a20fc88f5988432c06ac030d05a4caeafe7f34a4acce70a6c82d98010a0dd412d2e789c0c652387dc31b3c4f6dc6dc4ba37951df7a4fc99d578e834a914d3921492cb4be9a87d7ee86e1b684cf6705110e8ec3278d7fc9fdf2bd9a2565cdb2c8abf4a0d8b5ad1ebf549cc05a11e09487978f9edc5e26c3d9ee31066e3a3dc836b585f537aa54542d6e8ccf2d72a9c66314a2572923e289ed7984dce71a424898d356eb4f17c7841ec6c54c8511e78f50b2bad1ce26cf5c490de6c5c397f0249d457ddeb155ff1f6685dd3959f21e33fc42f2debfa491f894fc2e132dfe23003e35c6dfb8decf3d066f025b94ca7dacb385a2a231128f4daf033418b380f191e8b730985fb06d5138e0cec450546f3782f237c13afa17f8f744a53992c9019e10e221f0b829ca395fe407ac85380391f91aca3eb67a489e8df617865f1f206fad7bb3e2653cd0469dc3990951004497cd2a2eb0042904c3ec2dbcab26a0bc46ea60b2240863d55252c3a8ae2939d62519217e31ca7b0b6a494c63b52a16a289fa94981b61be6dd9bae18c5b9dede401285766a1c556984339b24d33e77092ac686aa7b76700bed940ee0ac42397a6098d5c189324c86e1763896307dc9f2f87f2143260c680ffc5d2ac871ad79a07a3cac1b80580ecb4b084178a4422ac960a80ce795492ecb223a3c93176f929fda86e4d15dd20ea2b6476eb021c99034f2c2f37d07fc22380af7e1c045ac1cf5efe0c53e1e8b67729fd243af295b561618c579f445d06157123f2b72492ebe69df8bdfa24e76cbcadf06ac578a61ab767f132fa619d33e67de3173f1c2c2f218cbf884939dcf2be098c6c30c99931c9b0ca6ba745699557d1d7d47c1a7f5baab8360ee9f801ab3ef81cb4882d6489b322f0f3ee2d74e57795b1880b304865d6edea26064a540c253c4c2e86c91a68d2024e76a4baf72dce44e7ca6b88ac462dba127b064dca5f030a6bf7ff42a6857da8879e14f4a831002794da3c78950d4ada6c4f29cab756fd2b541aff1b14ea040db16a2ed55b5caa0f973971910f200ac7d85319a1cf3fe20379a7c28ff7c37e3be538bf00cfafef11fbc0bff8e9e15d9b3f51cd7d4e5e73797fcfe4a2e2941ac27d310896d4c7751bbbf5b83621a9e260858c96d50a3cbff44060f92726ee7fb01ba4717fc78a9ecf3c3d1ac9acbfce3858821bb191359297eb344f1febf18076fcf70a3c709e2cb9208464756fd2c393b1687b89675a4d809b113361222be0e3bbc80703c23f62b940bb417e44eae9d24360a06ae0564bb365f725cec952b7d63181f3307904104e410f1bb386c58e72bf9560056c1b363219391c2f315a6f6790389428cbfb297e15d6404ca65baf944b1198a98cc392bf946e941e04f0aa38be6d788030591b54c49753b16948d2759f5dd3987c12c3aa7d2d281d996466d2057b28d8cb24fdbb4367b287b38e6988c942505224971d06748523c7d48811e58e54832e43cf5e394b2c56ff797d9cbe8c3eea0d16c07c269fd380fc59ce40ede15305ea67f6efe2980a92702050ec281f69b94ea0b2b5024527403663b00efa6790539b74b4b542150739a9e0ba507e834fd9f3f2e8c82add5a77fa2ad13450ea51add9907ccb71735336c64c08c9d9a1b5edef707fec52240533e899fc51da053dc13d9dc7d42ecaa51452fdebdf775f7bbbd022370d9cbb71d9b4e44f7658dd67dbc99ac3ed0e0695549c8bdc12a6757a3096d40af346339e03a4d6597da087393f0c8f045943479f9edd83dbdd955ec5b8cc8c559668834a616d1a3b4b20eb4418cac54b57ab75e9b6d564c61e784d0cc8f238ce2f69b243aa580c3037f126de36f88325beb2e0b1fdb9d41f627d34b71e3b8541fab2534a476bea7d8a4e28ba13456ac0d0135f11648f1d63951840faf5d52949f9688a5b9a89339f8bd161de6989fe8fc3b1c305202918c04c4e4b350da1f9e72d3511faa91c3efb7ccdaf8ce5adba6803831f959198a30d31b9dc8026b71650700cd16d7b5cb4ccb8e47d1235b4790f4e29903fcfe0a76734aa5d20ef5373305fbf6319c5ff447e62db6f6ab72c6e4ff12d211fe74987a8e227c159f04223e844891f3af776c86cbfce6f7d7ef2d536c33301751d488fbf2bc10028a32063dab7bf3b6d6e682f3bb20f1752f532d09da4d7789ffee733a8ae0bb64b4984e6fb7d70e49219e72fd42dafb1e23594ee624d453ff39050b4bbc58303be87c3bc15e5532175d002a97f5721ebac384e95a096be49a6fcb1b4bcf229acfb5290582e6b4e41882efdf484359b9469d2c0f927043dcf3ce24d189d275413b2318e211c963836e7ccf5b129a5daa2cf6451715721796268f92299dab9080c999afc6e378ea357a092ea67e4fb120de26a8dad0532081663dd9bada0f5d84d3761d5662f119451d0753290b6629c3ab1bc6307297374c79cc3a6ba94fce62b485daa14377ace889919121abbf8cc786e3281beef59b8dc5600447e924560845c6dee71c289e839345db644e19a31fec26641e7370982654fbf6c540eb2118ad223186ade395f495254e237a9018c729115e348d30a8406392fa4c3427ba329e178099ee2a881e3439866aa325c4dbd42cb17c715592df3bf5254dd8714b6e6a479c4a42b091a09ab1416ed00ddde6dc4c618dbafd9e037f75d93c312fd83a75c5b0b8f2990b7807995ee7e4f8f4d324aaab4b4e0ce76ea33a0a01414a7da91c00ae9926b0974c3a9d4e4a02329e2c31fdf04bc3e4aeeb5bb30b04dfcfd3b0d02b894d7a76dbd63b1ec113a387256b6b7c05f652ae0d59971fa8ef3dc04aed14853b54b355f846f70b802a23662ac7211f6181318ba9a641932bd204c75d54d9f2649d12efc2b2657b3b5113776c272b911e7fdc0ec19270915051e798cf852ee15d97146f76c9c2a4f03eab7ea217b42fe92685b0c5b7e309bdb8a19d1c3e563d339cc8d5c29bffdaff7108310ea20a7d44e406216aaf6008c2826d6f35c7560632ef27fd4949a6128818f90962b09dcd74a61480281b9079248bf9b0b9329b648ac145920be7351df8d67f1c1ae65dcf14a6ddc6ed0aa10ca4aaa43d2920cba0d67ca9933efebba364a206c369387c90f9f8a292a531ac05b89a0924dd5de15af3833278c8b76e4b82434839891a4e0c3b1bbdce43dfa45fe04af628c8608e845e27bfb6217bc6667abb799b7a67d3699c40d6caec1ed689352dd5c3f6e460d0d644fa1bc113af70399a11b5f83b7b82cd34e0437138e04f36056060fc4f9d48f77160f553dea9d3ba5bb8115c7a90e521c03e4bbbe0960d10998e79d1569d9ec13c9e22a94f49743b59782e6493218e491292545397fc0422e8955e395478d964611c94a50df54b7d109c107f21edba24b66fc0139e45ace7d9041a221fe2df541289ba84cd30deac9f1c0277d253f9a917f1edd27f7a2f5a3d0e294eb90dee68f2d165e51144377757c07918fd5d8d2d47c23c626af3d0e14d134231d37018eb4ca934334fe2fd748897d71bb99a42d8be70c08c483d4777c3731063fee00eb53db4c9365b78f347c543eafbfd0b39cf9c24a724c4a5d077cc05f744867871f2c3016e0726bc24c3375063e028e2611caa29a9071cd6aa751969e576c866f4c047bbcc29ac47b152e98c95dc67bba33f4a2f7e5eeafe42b2e82bf30e70ffdc39d5262692a2fc2627340fb930f2660f1002b847c8eae265463020c5733e85861b6c025506b90327553660018564e58749406fde37259f459d64a95b959e033b514925d699e64335eb8347a621d63fdbf5e9d35f7267d6fe974e3c3840de0f879661edc479c24a7990526e0ccb593642c26f143c05452a06b9d4b706306f03807c45351b86188d8bf9da468602cfa0e4bf0fdcd15fd3b917796e494119a72e25041e408ca7b156262de6ef9df6c1cdf4b582f491d3e7681d9dfc027d1bc79de1b6793f63a5e0781a727e8f7f2fb127727a9555b6afb33c64bedc6c3db1c183d5e45f22f250755868fdbd42e2ffb4c492107e060f9bce0c280c490254f66aec19daff0040ea1551790e3c73966ad1da8c1d00a01235793c2143fcf7f69d91c34c441a1e796b786b2bff67e618f0fec152cb0bbf739df708492cc5976c5122aded08ba35c3bce1095991557605c63673250b8f94d1b72fe353cf69fd190ccf650108941c7c9ebbec02580f7ca0db626c58aa28c6415c75c66d6235b0975144329aa3def3c949fa90972755f526282e293836dc1558b9cbb56554fde46895e59ef50748ca51ae90b265b69570b1136da0c73d05fc22fc21e0b0532c003e46f4a026e786e8e9b3181edf656e651b7a6954bb2978b5a1dea9c1595795c0c142afda12cf23d998f692a0a0fd46b377e74c145c94651faf3a8dccc03c60ddb6e1dfc379cfc5473c5b04c143fd50240e4201a4bbb5ff9625159ff5c9351423b82ce353dd5f1e7eb738e19e0f68a460e81f7ff2efe67db325963212d035694d5ce157f381aa76c7d92fd5b85b22b95b73c40cd5dd37282884bebb23bc31cd587476c602bd0a31a62784a3461a97cf233e1b72de8503c0dbd5678121323278d4ffdf60e877c4bc8ddd0a6fad2ba3c23735fc46cb7bdb13bd3afed9303e0bc0a19ac43b697a715ca2af3f0cf190f89ca4164ed5b194eeda983cc9758f49b3f2cdb19f22f537391aca75e5469b7112b138db877d4772960bc2fe2edd2ed8b42c64a58a7df9c1006e943bba5c25bb339e1bc380e38489129bf5396cbfba1a0f3687cd2f0561187ad4e1c76090a3eaa71bfed488afd4790cc4671b23b3226f400fcd4fc5efe35b24e5634c059daa7837c48343794465ce62a4c52e7a75564cebc4d212b9a355e74f0970039aee9b009d884c4d11b5fa140fa07663972c0db4a4350e51eea026a0dc377912aa002431f8b553b35641522fcdba43eba0c0d49a178fc5b0cfdebf129f224a474dc2ad209a2891d5fe90c3a38374301bc402a8d9f13b2e88589a23d43610d76a1bf832d18381c677d1475074fa063e500", 0x2000, &(0x7f0000000e80)={0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, &(0x7f0000000a40)={0x90, 0x0, 0x0, {0x5, 0x0, 0x0, 0x400000000000, 0x0, 0x0, {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x4000}}}, 0x0, 0x0, 0x0, 0x0}) 07:24:07 executing program 0: r0 = syz_io_uring_setup(0x4636, &(0x7f0000000240), &(0x7f0000002000/0x2000)=nil, &(0x7f0000fed000/0x11000)=nil, &(0x7f0000000100)=0x0, &(0x7f0000000040)=0x0) bpf$PROG_LOAD(0x5, &(0x7f0000000080)={0x0, 0x8, &(0x7f0000001fc0)=ANY=[@ANYBLOB="620af8ff25200021bfa100000000000007010000f8ffffffb702000003000000bd120000000000008500000006000000b70000000000000095000000000000003faf4f2aa3d9b18ed812a2e2c49e8020a6f4e0e4a9446c7670568982b4e020f698393aa0f3881f9c24aa56f15199fa093c59d66b5ece9f36c70d0f13905ea23c22"], 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, '\x00', 0x0, 0x0, 0xffffffffffffffff, 0x8, 0x0, 0x0, 0x10, 0x0}, 0x80) r3 = openat$damon_schemes(0xffffffffffffff9c, &(0x7f0000000180), 0x80800, 0x0) syz_io_uring_submit(r1, r2, &(0x7f0000000000)=@IORING_OP_READ=@pass_buffer={0x16, 0x0, 0x0, @fd=r3, 0x0, &(0x7f0000000140)=""/14, 0xe}, 0x0) io_uring_enter(r0, 0x2fe, 0x5, 0x0, 0x0, 0x0) 07:24:07 executing program 2: syz_mount_image$ocfs2(&(0x7f0000000000), &(0x7f0000000100)='./file0\x00', 0x8000002, 0x3b, &(0x7f0000000200)=[{&(0x7f0000010000)="02020202020202027468697320697320616e206f6366733220766f6c756d650002020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202027468697320697320616e206f6366733220766f6c756d6500020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202027468697320697320616e206f6366733220766f6c756d65000202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202027468697320697320616e206f6366733220766f6c756d65000202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202024f434653563200007f1ef014ffffffff00000000002000000000000000000000000000000000000000000000310000000000000000000000751f1f6300000000751f1f63000000000000000000000000020000000000000000000000000000007f1ef01400000000000000000000000000000000000000000000000000000000b83abdfdac0a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005a00000014000000000000000000751f1f6300000000000000000300000058bf00000700000009000000000000000a000000000000000c0000000e000000020000003748825f0400"/8480, 0x2120}, {&(0x7f0000012120)="00000000000000000000000000000000a92c83a1352f432895326cda257351bf00000000000000000000000000000000000000000000000000010000ade51acc7e0cd8aecea1549d00"/96, 0x60, 0x2140}, {&(0x7f0000012180)="47524f5550303100c00f0020710e00007f1ef0140000000000000000000000000f000000000000000400000000000000db7466b36d0c00000000000000000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f00"/640, 0x280, 0x4000}, {&(0x7f0000012400)="47524f5550303100c00f1001f60000007f1ef0140000000000000000000000000c0000000000000008000000000000000cbc8352f80100000000000000000000ffffff0300"/96, 0x60, 0x8000}, {&(0x7f0000012460)="494e4f44453031007f1ef014ffff010000000000000000000000000000000000380f000000000000ed41030011000000751f1f6300000000751f1f6300000000751f1f63000000000000000000000000090000000000000000000000000000007f1ef01400000000000000000000000000000000000001000000000000000000280ff83ca00400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000380f0000000000000900000000000000100001022e0000000900000000000000100002022e2e00003d42000000000000180f0a026c6f73742b666f756e640000", 0x100, 0x9000}, {&(0x7f0000012560)="494e4f44453031007f1ef014ffff020000000000000000000000000000000000380f000000000000ed41040011000000751f1f6300000000751f1f6300000000751f1f630000000000000000000000000a0000000000000000000000000000007f1ef01400000000000000000000000000000000000001000000000000000000e8a6f417ed1600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000380f0000000000000a00000000000000100001022e0000000a00000000000000100002022e2e00000b0000000000000018000a016261645f626c6f636b7300000c0000000000000020001201676c6f62616c5f696e6f64655f616c6c6f6300000d0000000000000014000801736c6f745f6d61700e00000000000000180009016865617274626561740000000f000000000000001c000d01676c6f62616c5f6269746d6170000000100000000000000018000b016171756f74612e7573657200110000000000000018000c016171756f74612e67726f757012000000000000001c000f026f727068616e5f6469723a303030300013000000000000001c000f026f727068616e5f6469723a3030303100140000000000000020001101657874656e745f616c6c6f633a30303030000000150000000000000020001101657874656e745f616c6c6f633a3030303100000016000000000000001c001001696e6f64655f616c6c6f633a3030303017000000000000001c001001696e6f64655f616c6c6f633a30303031180000000000000018000c016a6f75726e616c3a30303030190000000000000018000c016a6f75726e616c3a303030311a000000000000001c0010016c6f63616c5f616c6c6f633a303030301b000000000000001c0010016c6f63616c5f616c6c6f633a303030311c00000000000000200011017472756e636174655f6c6f673a303030300000001d00000000000000200011017472756e636174655f6c6f673a303030310000001e000000000000001c0010016171756f74612e757365723a303030301f000000000000001c0010016171756f74612e757365723a303030312000000000000000200011016171756f74612e67726f75703a303030300000002100000000000000b80c11016171756f74612e67726f75703a3030303100"/896, 0x380, 0xa000}, {&(0x7f00000128e0)="494e4f44453031007f1ef014ffff0300000000000000000000000000000000000000000000000000a481010011000000751f1f6300000000751f1f6300000000751f1f630000000000000000000000000b0000000000000000000000000000007f1ef0140000000000000000000000000000000000000000000000000000000085ed3c1db603000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f300"/224, 0xe0, 0xb000}, {&(0x7f00000129c0)="494e4f44453031007f1ef014ffff0400000000004400000000000000000000000000110000000000a481010091040000751f1f6300000000751f1f6300000000751f1f630000000000000000000000000c0000000000000000000000000000007f1ef01400000000000000000000000000000000000000000000000000000000cccff09f620200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001a0000001001000044000400f30001000000000000000000f6000000100100000800000000000000", 0xe0, 0xc000}, {&(0x7f0000012aa0)="494e4f44453031007f1ef014ffff0500000000000100000000000000000000000040000000000000a481010011000000751f1f6300000000751f1f6300000000761f1f630000000000000000000000000d0000000000000000000000000000007f1ef01400000000000000000000000000000000000000000000000000000000075330279202000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f30001000000000000000000000000000000010000001842000000000000", 0xe0, 0xd000}, {&(0x7f0000012b80)="494e4f44453031007f1ef014ffff0600000000004000000000000000000000000000100000000000a481010011020000751f1f6300000000751f1f6300000000751f1f630000000000000000000000000e0000000000000000000000000000007f1ef014000000000000000000000000000000000000000000000000000000009a7d2e882505000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f30001000000000000000000000000000000400000001801000000000000", 0xe0, 0xe000}, {&(0x7f0000012c60)="494e4f44453031007f1ef014ffff0700000000000020000000000000000000000000000800000000a481010091040000751f1f6300000000751f1f6300000000751f1f630000000000000000000000000f0000000000000000000000000000007f1ef0140000000000000000000000000000000000000000000000000000000025fea9c2220600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008f11000000200000007e0100f30001000000000000000000710e0000002000000400000000000000", 0xe0, 0xf000}, {&(0x7f0000012d40)="494e4f44453031007f1ef014ffff0800000000000200000000000000000000000060000000000000a481010011100000751f1f6300000000751f1f6300000000761f1f63000000000000000000000000100000000000000000000000000000007f1ef014000000000000000000000000000000000000000000000000000000008f1f0d952103000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f30002000000000000000000000000000000010000001c420000000000000100000001000000344200"/256, 0x100, 0x10000}, {&(0x7f0000012e40)="494e4f44453031007f1ef014ffff0900000000000200000000000000000000000060000000000000a481010011100000751f1f6300000000751f1f6300000000761f1f63000000000000000000000000110000000000000000000000000000007f1ef01400000000000000000000000000000000000000000000000000000000f539bcb01c07000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f300020000000000000000000000000000000100000028420000000000000100000001000000384200"/256, 0x100, 0x11000}, {&(0x7f0000012f40)="494e4f44453031007f1ef014ffff0a0000000000000000000000000000000000380f000000000000ed41020011000000751f1f6300000000751f1f6300000000751f1f63000000000000000000000000120000000000000000000000000000007f1ef0140000000000000000000000000000000000000100000000000000000090aa2dc04d0200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000380f0000000000001200000000000000100001022e0000000a00000000000000280f02022e2e00"/256, 0x100, 0x12000}, {&(0x7f0000013040)="494e4f44453031007f1ef014ffff0b0000000000000000000000000000000000380f000000000000ed41020011000000751f1f6300000000751f1f6300000000751f1f63000000000000000000000000130000000000000000000000000000007f1ef014000000000000000000000000000000000000010000000000000000008ba223c5f20600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000380f0000000000001300000000000000100001022e0000000a00000000000000280f02022e2e00"/256, 0x100, 0x13000}, {&(0x7f0000013140)="494e4f44453031007f1ef014ffff0c00000000000000000000000000000000000000000000000000a481010091040000751f1f6300000000751f1f6300000000751f1f63000000000000000000000000140000000000000000000000000000007f1ef014000000000000000000000000000000000000000000000000000000002b6b221d32010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010400f300"/224, 0xe0, 0x14000}, {&(0x7f0000013220)="494e4f44453031007f1ef014ffff0d00000000000000000000000000000000000000000000000000a481010091040000751f1f6300000000751f1f6300000000751f1f63000000000000000000000000150000000000000000000000000000007f1ef014000000000000000000000000000000000000000000000000000000001a2efe98c1030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010400f300"/224, 0xe0, 0x15000}, {&(0x7f0000013300)="494e4f44453031007f1ef014ffff0e00000000000001000000000000000000000000400000000000a481010091040000751f1f6300000000751f1f6300000000751f1f63000000000000000000000000160000000000000000000000000000007f1ef01400000000000000000000000000000000000000000000000000000000304f318b65040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020000000004000000010400f30001000000000000000000fe030000000400003c42000000000000", 0xe0, 0x16000}, {&(0x7f00000133e0)="494e4f44453031007f1ef014ffff0f00000000000000000000000000000000000000000000000000a481010091040000751f1f6300000000751f1f6300000000751f1f63000000000000000000000000170000000000000000000000000000007f1ef0140000000000000000000000000000000000000000000000000000000039a2374834010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010400f300"/224, 0xe0, 0x17000}, {&(0x7f00000134c0)="494e4f44453031007f1ef014ffff1000000000000008000000000000000000000000000200000000a481010011010000751f1f6300000000751f1f6300000000751f1f63000000000000000000000000180000000000000000000000000000007f1ef0140000000000000000000000000000000000000000000000000000000089fc747cf707000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f30001000000000000000000000000000000000800001802000000000000", 0xe0, 0x18000}, {&(0x7f00000135a0)="494e4f44453031007f1ef014ffff1100000000000008000000000000000000000000000200000000a481010011010000751f1f6300000000751f1f6300000000751f1f63000000000000000000000000190000000000000000000000000000007f1ef0140000000000000000000000000000000000000000000000000000000096f2f575dd03000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f30001000000000000000000000000000000000800001822000000000000", 0xe0, 0x19000}, {&(0x7f0000013680)="494e4f44453031007f1ef014ffff1200000000000000000000000000000000000000000000000000a4810100d1000000751f1f6300000000751f1f6300000000751f1f630000000000000000000000001a0000000000000000000000000000007f1ef014000000000000000000000000000000000000000000000000000000000ea913a3b7030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000300f00"/224, 0xe0, 0x1a000}, {&(0x7f0000013760)="494e4f44453031007f1ef014ffff1300000000000000000000000000000000000000000000000000a4810100d1000000751f1f6300000000751f1f6300000000751f1f630000000000000000000000001b0000000000000000000000000000007f1ef014000000000000000000000000000000000000000000000000000000003feccf2644010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000300f00"/224, 0xe0, 0x1b000}, {&(0x7f0000013840)="494e4f44453031007f1ef014ffff1400000000000000000000000000000000000000000000000000a481010011080000751f1f6300000000751f1f6300000000751f1f630000000000000000000000001c0000000000000000000000000000007f1ef01400000000000000000000000000000000000000000000000000000000fe0c1aafcb0400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e70100"/224, 0xe0, 0x1c000}, {&(0x7f0000013920)="494e4f44453031007f1ef014ffff1500000000000000000000000000000000000000000000000000a481010011080000751f1f6300000000751f1f6300000000751f1f630000000000000000000000001d0000000000000000000000000000007f1ef01400000000000000000000000000000000000000000000000000000000cf49c62a380600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e70100"/224, 0xe0, 0x1d000}, {&(0x7f0000013a00)="494e4f44453031007f1ef014ffff1600000000000100000000000000000000000020000000000000a481010011100000751f1f6300000000751f1f6300000000761f1f630000000000000000000000001e0000000000000000000000000000007f1ef01400000000000000000000000000000000000000000000000000000000f4300ba0d007000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f30001000000000000000000000000000000010000002042000000000000", 0xe0, 0x1e000}, {&(0x7f0000013ae0)="494e4f44453031007f1ef014ffff1700000000000100000000000000000000000020000000000000a481010011100000751f1f6300000000751f1f6300000000761f1f630000000000000000000000001f0000000000000000000000000000007f1ef01400000000000000000000000000000000000000000000000000000000f5bce4d3ed03000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f30001000000000000000000000000000000010000002442000000000000", 0xe0, 0x1f000}, {&(0x7f0000013bc0)="494e4f44453031007f1ef014ffff1800000000000100000000000000000000000020000000000000a481010011100000751f1f6300000000751f1f6300000000761f1f63000000000000000000000000200000000000000000000000000000007f1ef014000000000000000000000000000000000000000000000000000000004834299b3905000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f30001000000000000000000000000000000010000002c42000000000000", 0xe0, 0x20000}, {&(0x7f0000013ca0)="494e4f44453031007f1ef014ffff1900000000000100000000000000000000000020000000000000a481010011100000751f1f6300000000751f1f6300000000761f1f63000000000000000000000000210000000000000000000000000000007f1ef014000000000000000000000000000000000000000000000000000000002a04fdb11b01000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f30001000000000000000000000000000000010000003042000000000000", 0xe0, 0x21000}, {&(0x7f0000013d80)="c03b39980000000400000000000010000000200000000001000000010000000100000000000000000000000000000000a92c83a1352f432895326cda257351bf0000000100"/96, 0x60, 0x218000}, {&(0x7f0000013de0)="c03b39980000000400000000000010000000200000000001000000010000000100000000000000000000000000000000a92c83a1352f432895326cda257351bf0000000100"/96, 0x60, 0x2218000}, {&(0x7f0000013e40)="7024f50c00000000803a0900803a090010270000060000000000000005000000380f000000000000ed41030011000000751f1f6300000000751f1f6300000000751f1f63000000000000000000000000090000000000000000000000000000007f1ef01400000000000000000000000000000000000001000000000000000000d394d8b5740300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000380f0000000000000900000000000000100001022e0000000900000000000000280f02022e2e00"/256, 0x100, 0x421c000}, {&(0x7f0000013f40)="0000000000000000000000000000000000000000000000005f608695f80700000200"/64, 0x40, 0x421cfe0}, {&(0x7f0000013f80)="000000000000000000000000000000000000000000000000b6ad528d050000000300"/64, 0x40, 0x421dfe0}, {&(0x7f0000013fc0)="0000000000000000000000000000000000000000000000009a048ad7060000000400"/64, 0x40, 0x421efe0}, {&(0x7f0000014000)="0000000000000000000000000000000000000000000000001f5df08806000000c024f50c0000000001000000010000000200"/64, 0x40, 0x421ffe0}, {&(0x7f0000014040)="00000000000000000000000000000000000000000000000090aefd31bc000000", 0x20, 0x4220fe0}, {&(0x7f0000014060)="000000000000000000000000000000000000000000000000eeffe33800000000", 0x20, 0x4221fe0}, {&(0x7f0000014080)="c024f50c0000000001000000010000000200"/32, 0x20, 0x4224000}, {&(0x7f00000140a0)="00000000000000000000000000000000000000000000000090aefd31bc000000", 0x20, 0x4224fe0}, {&(0x7f00000140c0)="000000000000000000000000000000000000000000000000eeffe33800000000", 0x20, 0x4225fe0}, {&(0x7f00000140e0)="7124f50c00000000803a0900803a0900102700000600000000000000050000000060000000000000a481010011100000751f1f6300000000751f1f6300000000761f1f63000000000000000000000000100000000000000000000000000000007f1ef014000000000000000000000000000000000000000000000000000000008f1f0d952103000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f30002000000000000000000000000000000010000001c420000000000000100000001000000344200"/256, 0x100, 0x4228000}, {&(0x7f00000141e0)="00000000000000000000000000000000000000000000000093abe5e6030700000200"/64, 0x40, 0x4228fe0}, {&(0x7f0000014220)="000000000000000000000000000000000000000000000000b6ad528d050000000300"/64, 0x40, 0x4229fe0}, {&(0x7f0000014260)="0000000000000000000000000000000000000000000000009a048ad7060000000400"/64, 0x40, 0x422afe0}, {&(0x7f00000142a0)="0000000000000000000000000000000000000000000000001f5df08806000000c124f50c0000000001000000010000000200"/64, 0x40, 0x422bfe0}, {&(0x7f00000142e0)="000000000000000000000000000000000000000000000000bc07256bbf000000", 0x20, 0x422cfe0}, {&(0x7f0000014300)="000000000000000000000000000000000000000000000000eeffe33800000000", 0x20, 0x422dfe0}, {&(0x7f0000014320)="c124f50c0000000001000000010000000200"/32, 0x20, 0x4230000}, {&(0x7f0000014340)="000000000000000000000000000000000000000000000000bc07256bbf000000", 0x20, 0x4230fe0}, {&(0x7f0000014360)="000000000000000000000000000000000000000000000000eeffe33800000000", 0x20, 0x4231fe0}, {&(0x7f0000014380)="0500"/32, 0x20, 0x4234000}, {&(0x7f00000143a0)="00000000000000000000000000000000000000000000000033f428d205000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100"/96, 0x60, 0x4234fe0}, {&(0x7f0000014400)="0000000000000000000000000000000000000000000000007375191502010000", 0x20, 0x4235fe0}, {&(0x7f0000014420)="0500"/32, 0x20, 0x4238000}, {&(0x7f0000014440)="00000000000000000000000000000000000000000000000033f428d205000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100"/96, 0x60, 0x4238fe0}, {&(0x7f00000144a0)="0000000000000000000000000000000000000000000000007375191502010000", 0x20, 0x4239fe0}, {&(0x7f00000144c0)="47524f555030310000010004fe0300007f1ef01400000000000000000000000016000000000000003c420000000000006f711d99fb01000000000000000000000300"/96, 0x60, 0x423c000}, {&(0x7f0000014520)="494e4f44453031007f1ef0140000010000000000000000000000000000000000380f000000000000ed41020001000000761f1f6300000000761f1f6300000000761f1f630000000000000000000000003d4200000000000000000000000000007f1ef01400000000000000000000000000000000000001000000000000000000c995d9cc97070000000000000000000000000000000000003c420000000000000000000000000000000000000000000000000000000000000000000000000000380f0000000000003d42000000000000100001022e0000000900000000000000280f02022e2e00"/256, 0x100, 0x423d000}], 0x0, &(0x7f0000014620), 0x1) [ 1919.497936][ T2975] ntfs: (device loop3): load_system_files(): $MFTMirr does not match $MFT. Mounting read-only. Run ntfsfix and/or chkdsk. [ 1919.542639][ T2975] ntfs: volume version 3.1. [ 1919.560142][ T2975] syz-executor.3: attempt to access beyond end of device [ 1919.560142][ T2975] loop3: rw=0, sector=2304, nr_sectors = 1 limit=2304 [ 1919.574001][ T2975] ntfs: (device loop3): ntfs_end_buffer_async_read(): Buffer I/O error, logical block 0x900. [ 1919.584745][ T2975] syz-executor.3: attempt to access beyond end of device [ 1919.584745][ T2975] loop3: rw=0, sector=2305, nr_sectors = 1 limit=2304 [ 1919.599826][ T2975] ntfs: (device loop3): ntfs_end_buffer_async_read(): Buffer I/O error, logical block 0x901. [ 1919.610911][ T2984] loop2: detected capacity change from 0 to 262144 [ 1919.613158][ T2975] syz-executor.3: attempt to access beyond end of device [ 1919.613158][ T2975] loop3: rw=0, sector=2306, nr_sectors = 1 limit=2304 [ 1919.631466][ T2975] ntfs: (device loop3): ntfs_end_buffer_async_read(): Buffer I/O error, logical block 0x902. [ 1919.641955][ T2975] syz-executor.3: attempt to access beyond end of device [ 1919.641955][ T2975] loop3: rw=0, sector=2307, nr_sectors = 1 limit=2304 [ 1919.661549][ T2975] ntfs: (device loop3): ntfs_end_buffer_async_read(): Buffer I/O error, logical block 0x903. [ 1919.682205][ T2975] syz-executor.3: attempt to access beyond end of device 07:24:07 executing program 0: r0 = syz_open_dev$sg(&(0x7f0000000140), 0x0, 0x0) ioctl$SCSI_IOCTL_SEND_COMMAND(r0, 0x1, &(0x7f0000000180)) [ 1919.682205][ T2975] loop3: rw=0, sector=2308, nr_sectors = 1 limit=2304 [ 1919.697475][ T2975] ntfs: (device loop3): ntfs_end_buffer_async_read(): Buffer I/O error, logical block 0x904. [ 1919.707747][ T2984] (syz-executor.2,2984,0):ocfs2_parse_options:1455 ERROR: Invalid heartbeat mount options [ 1919.733491][ T2975] syz-executor.3: attempt to access beyond end of device [ 1919.733491][ T2975] loop3: rw=0, sector=2309, nr_sectors = 1 limit=2304 [ 1919.744247][ T2984] (syz-executor.2,2984,0):ocfs2_fill_super:1173 ERROR: status = -22 [ 1919.757176][ T2992] program syz-executor.0 is using a deprecated SCSI ioctl, please convert it to SG_IO 07:24:07 executing program 5: prlimit64(0x0, 0xe, &(0x7f00000001c0)={0x8, 0x8b}, 0x0) sched_setscheduler(0x0, 0x2, &(0x7f0000000080)=0x6) sched_setaffinity(0x0, 0x8, &(0x7f0000000000)=0x5) r0 = getpid() sched_setscheduler(r0, 0x1, &(0x7f0000000240)=0x1) socketpair$unix(0x1, 0x3, 0x0, &(0x7f0000000200)={0xffffffffffffffff, 0xffffffffffffffff}) connect$unix(r1, &(0x7f000057eff8)=@abs, 0x6e) sendmmsg$unix(r2, &(0x7f00000bd000), 0x318, 0x0) recvmmsg(r1, &(0x7f00000000c0), 0x10106, 0x2, 0x0) r3 = socket$netlink(0x10, 0x3, 0x0) openat$tun(0xffffffffffffff9c, 0x0, 0x0, 0x0) sendmsg$nl_route(r3, &(0x7f0000000240)={0x0, 0x0, &(0x7f0000000040)={&(0x7f0000000280)=ANY=[@ANYBLOB="4000000010001fff000000000049000000000000", @ANYRES32=0x0, @ANYBLOB="81ffffff08000000180012800e0001007769726567756172640000000400028008000a00", @ANYRES32], 0x40}}, 0x0) [ 1919.775085][ T2975] ntfs: (device loop3): ntfs_end_buffer_async_read(): Buffer I/O error, logical block 0x905. [ 1919.856300][ T2975] syz-executor.3: attempt to access beyond end of device [ 1919.856300][ T2975] loop3: rw=0, sector=2310, nr_sectors = 1 limit=2304 [ 1919.893878][ T2975] ntfs: (device loop3): ntfs_end_buffer_async_read(): Buffer I/O error, logical block 0x906. [ 1920.155621][ T2975] syz-executor.3: attempt to access beyond end of device [ 1920.155621][ T2975] loop3: rw=0, sector=2311, nr_sectors = 1 limit=2304 [ 1926.963622][ T3002] fuse: Bad value for 'fd' 07:24:15 executing program 1: mkdir(&(0x7f0000000400)='./file0\x00', 0x0) r0 = openat$fuse(0xffffffffffffff9c, &(0x7f0000002080), 0x42, 0x0) mount$fuse(0x0, &(0x7f00000020c0)='./file0\x00', &(0x7f0000002100), 0x0, &(0x7f0000002140)=ANY=[@ANYBLOB='fd=', @ANYRESHEX=r0, @ANYBLOB=',rootmode=0000000000000000040000,user_id=', @ANYRESDEC=0x0, @ANYBLOB=',group_id=', @ANYRESDEC=0x0]) read$FUSE(r0, &(0x7f00000021c0)={0x2020, 0x0, 0x0}, 0x2020) write$FUSE_INIT(r0, &(0x7f0000004200)={0x50, 0x0, r1}, 0x50) syz_fuse_handle_req(r0, &(0x7f000000a680)="f2dc9578c61994cf938a7621ac049a6d63cea9535d30d26edbb299ce0df1caaa2d572e7e3f138b32748824c179e9069a074599f8c5142a6b07bd3e7ce9f5f5730cc35d00260c16aea6d183cfab504764e7a6b5ca82062a069826c6a0dd415f723d11e7ad580efce4718e67ef24c2b058a5d5bcfac5d10b96cc5f30ae1e55ac6743858264d5e83bfc6251d690a684153599ce666fadd8124bd6e9552ce6803d3ec3db5c49c36aec21a2f8e83c270a34f4c8fc5bc0aa9bb27990d3d7d7377ccaf59431a50d729cfea9a95192edd372dc611197497d92e42c0ba8e55d60e0945344cacf86e4f5a06bb68d15da7bfd091340eb87c66395930dc8528e1898f6c7231cacf11bf35b0b45373e7b7e81c91842216477966f66f43db170e8b5df42312208748d394c7da23b366ab71a87c6f966ac6b768347dcadd2c876f24bc4c7edf7c792e6a5a154fe0f0699296ed5f66e614f06a7e0814bccdf19b69e1b8694673528768065b3347d9a6dc3bbab2390e3e5f3bdd93cba7d7e3180548091c4d18ff32f598f94a9c569c352568e5e577ccc792e58044457d1bfabd4d569106252bf9f7f389f82fde530468d5c79cd4f1b37dc7f371c31fba401f5643a3922e6fad6d063d590d736ed522ce3b1fa0520727a0b5ea72825e3969584266415a676017b3ab22062acff919b6d2b67dd1fce30af908a95fe9d221b0a7c06b8b51bd7de1748f3f446df7edbbe1df499cb1fb7bffabf9e3382923ec67e5b7fa8d2cf40553e26ec112272858e08919d5ae4e40a88adb207de714a1631a748c028c867db0553938680904875597c15094be7c7f2537efb0581217b9485a6538cfa10afd888a822532c9c1fa69adf9c73a42cbfc88b2fd499f61fd3c2e306ec76205d8ab8155b8e124aec587bcd09b1a60978410baed82afa74f28859bdf0d4ca0f950b474d723f85f1b6056b63e86d52a65838bcb29a238725ed6a05041037dfb32319ab917aa91a911fca8a0aa0e567f3a12947a8ab2f7639928b9d0868e8f842e1a923751fe24fe42a8dfbccd291e6773aa64cfa17b1d38087d259d8a4e64314bc0a054e6eed5466f247618d082b1effa1f242e2120c11f04f068a198d38adc770a356338af053cfd99005dbc42804d13bc0a2b2329f37845a9f056aba133a82b844c59fdbf17cd765563fb79d5ed6d5034365e519947f0d47f3dd0867446898637fbdba769ba8f69d15d79fcadd9207789179f0cbca87cac20c859bd8910c5b590b02f9ad384827306c51651e3d562d3ae450b27b07f989ce333429a0d12898553c08f8a5a0bde11a93dd58ccf66ef37d6b02b5afc1462dd1375037420123f0c1dfcc23e8c29a078ba09e829e7efa9a5e47a98f776d67f4cdd948083b213ae88565fbd69cda8806cd3b5006cbba3f87a13925f0ee4d3b5428825fba78a6664f889df80c9997ea730385b88a1f3142bce20c253c2bed257097eeeb63836c65582187ec19b376e1a2c786f4dc4571e9a8cd9015d13fe8987cf5bc269a5fea8c1a77b1c11dede4c09a315a31a0d7e67a17a28675742f66867b7588714a33a4168bf1da227c2d0c88c6edc5cf9c265bdd34b71b3fb87a14ce2a89dbdc56fa4a8664d6b9e7b717b8dcaa3d489a8d2c75ebf03f6493afabb516ba71479ef8aedf651f9515eaa44601888ad2438db03eaa1c0f5f479087f3aa22df5dae1984ab59f17ea356f4abd802eee24c78d230d3b5a54faf896bfcf881b9badb4e84a56f159e5725165c041d89b8534c48a751bae12bb2299013d301964e7b8f27f941db96c9d592e886972f733ff15994e54727ca4cbf884450933020bdd8dd0889c8c1ffe566d58d9e9fe6467f453b21f88c49eb6007816830974829b0732d648e5dc53eb4cb51f10634b48fcdc20af089f92c4662c6c0c4abd9cfc165476d8a33d5861bfa3722a7d4e36283cc79c2d715797651a3b77d34bd34893ffcd8cc78df5dd4d4234ed70e4fc9a8cee4a7bb8eb7a07eff1cc225786c19564e3d374943b254a166f8a43504036fa0288c7b10b1ff3b5684b46863fafa0338c50fcf7daf4cf5f5a742808f1d0207229ba0bff4344ee4613d606a101c47c07560cdb0efd213aac2e010fe5bb183193541a8ea262cb3a3e2c543d93c76c9d80c1713868681724822e27a80ef3289b874be77680f6c7fc6384a8a4740959e365976a01029a9cb27484aba0e9f55683856ca2848797c8b2846bc9a43ad7f1d150d4d3b4c1e832a34ad83d3e56d7c3fcc71d02f7daf7e6b5a1704c5550577e1f482efe3f5446aaa019f9396ea63b9d14570ba3468cc25145307c9d7dd4447e400d087f46467ae3a98e6dcaac53f6a4d71ab6ae1c45ec15424cebe7cf1dfecdf8fb2404bda64e229178b0b199474e79659fe16e96e927be38a3a1b7d9a2aaa7933d627a3010482fc32e06d10a6438577280fc08bfd954d4c7251d3dbf99bced67c1cf1c6299bd08b492ee8a23723f7d45e78520a0bf889603f20add15063ef612ece4bfc1a31c425628248e4d8ee261a0fda95a1e5ca1432b0f23ff2dac77fb97c62969ed41728f02a1f2ac92d9d344076384758ed89fbda9fdded9a6a980a5161b90f840397fd21fa3de514bf5a09843a9fc5a08895c6d5e416d836fc76804f4163c04cbea5a9bf46f1e1da583e8c0e1168c1e13c8a2ab1d1ccec531e2fb44c01652d92127156eed652ec30ad6be2e7ca4650cd3085603a848447e32b2e7001959a5bde0e28ed1e1962838acde3e521931e7f0355caeddb565dedd2da5920c0661a645e56f9c5506aa53552a042ff8ddcb6a3a166d819fc728483258eda01ba00680c99587574aa20467421b208ea987e4a009981b752710a484babc7b090112aadb589534eabde01a518520655665e02575ac70ccc31007ce737b148d3e92a52d4ea651f951609275734bf82f8c987db1803559209660c52678094d94ae4f4b6d706f847c09ca69c7fedecf51c1b2386a362faaa2f4ba004bf80be503523e29152b24c2709070ef8c79059252eff39c300da295b2a246ff8907b281aedddc2688709d20ae65551f91c86fbf37398eca2cb8d760b8ffc7f3592ed30dd2c88f8f518819cecb4b094e808572d50a76d3d7365cad98e8c9348361e28d98f44c5daa382017548bf75ef7be9f4d836932a6530204fcd2b7b0e1958347c1396e827ff5e63ab07081413b2e34e2e4964f82772656b49d0f81ac99879dec266019fe7794abf95dafd63e069fc1662df1fae47e90f4196241bcf3235181d23b37cb0ce9a352afa5ccc8fc863e1e9f7ddf5cd4b123a1360e7fa6ce1885afa332e5b50ce46a3cdde2cf16395af3b3b0ab8b8d01e436d08e112f1d121dbc64a503e50e47d4af2d29f7c2c6f55ad224da459ad765033bc26f398173c3bb80137ba6a21a5e87c9c5a9eaf41831b4f8f225aa9c64f2e54fab0e0f75b06c0f42fe7b6f193fdc5f9a6b24f910d08b1f6bd1aa6ac8ae7b0c397bbb80931b28995aac03e53a3d1f7afa034b1887e374cda3917f880171b53d64364633eff727147bb673d1208eae02bcb5eb2623e826ae46c4464297e79d0f146ae31dc8d684e97362a325a77d4fabc0dc14a58f9e538e3fbfc689049e7c07b98c9c2eba5eb3e37c7eae83c38406eae03749fec1de11f9dda4e6fc3f57b3daa50d8cb6135e58b3be8640e85b7f6874c7a46acb95d6f1702cfcf1ce53646e94c90a36660e343d59ff886e6d16848e149f0239135609caf2381df9c5693b7437fa14c9aab495d70d1945affec2d97a0a207a78b122e2d45631036f73c63ea2cc3959faf31b8a7906db710b733f3ab44e42b01a928b8f7ad5d741cd4ab0daf214c9c08acfac158a9b6b63ed9f6e2aec941154a08e01338c1825c3b1a6482a30bbbaf7b5d0db3a3a7446bb540136ef5ddbc5e4d376e2455c46b6342633086a0d683f659d5bef13a019f76597441560671c50ac74a1d903dfd37a08e578201e5116e22d79ad8e58d2e6f0123d5f8d50fc264fd993f0aab1adbb920bbc31ed062a59fce5341cb682cfa78d1576106ab1c7a9b0efcdfd47548986f8a17ae737ede69ecb7c417a4d3270890e191351d841ebf330b267e63c4c4add2b55a66067fb032f18a8647ad0493d2c841a4921807625178a99ca9663b11c051bb0fb6a05d4365538d3131d09174cca1954d57cca8c1c8700312efb2ed0c139af9dad373a7c45b24908bf9141f3c85d86a1605cc035b98866d32e1866808e21f1c4ff0c3b917a63b0a6a1fa8154e2a9f91cef23667c55e07629d49d86d3f459274e549f3521a34f62e4c9a7d3546eae2c7a230bfba1d06ff2906c90880c2d17cd01ad2a8f7dee1fb54f994b1a2d360190f31676787f9a4ed1329e505c961d73e7c1c6296215ececb09b08d71fe81b57f4dd21067bc3680e07f7c0ec0493fd86c3cc4e0ce99bc712547799a76ae011c118a0c0a038d49227f04459957fdce11244f03fb75bc9d979e46ee5e36652a73658e2430ac16b0688794440da15074fdde4cc64ca9b6c912eeeb41c424216222ecf59611856f79289c99767dc273f7d4afe46aed4f538e9231b9e55bdfd57f427437a9fe5453441beedbd30a9b61bae7ce36dae79a260247c51d0ed5e92df31b114c62b201f9b1530926362eb447c57fe346213ca9471ff851b3a78274d91667fd8a2142be1027c641a650983685e241ab3b7058e6fd9313e9aef348df5389a3e5b5919c2fe31242649e5fb4442d00e114bcb776d21cc70c13e3f0e6445300d0fc934087c5d9858e556bdf3384cad33fa7b94f7287c13178d7e7f1411888945d69aa3afb805cf13f720a59e7bc4e48da029eb97b0b276342f88ec6a997f13cd8bd3f2abd1c317fbc6701ec8e2c89a7f6db91899c020478b714a40fe01b9e30487326e435d6c0643c90cc542e7ce93907f513fe27f217a597adba58aa89e8f25b9874923ca2a9b99512e1ebd7e5661d2c460709713ff9e55d22512c4bb4380a2023e0f62ba2265df7023ec7e98b52bc7a9a20030210445e04e03a5706bf28136615319deee46b0f8ffc63a2596f81edb161d85d95ea826b4c56cda064b7730bbbabc1413c5c41951a811b9079b0e736a8bf34a65456468a4d4dcfbe07ca92579f72e2afeede987bcf6fb02cc85383989344e1dd34dae00d7bbda1055c69cbb4b60649ea0f2da4c731a1deb1fac2db5a102d837de2f35f3eec936c9f0b8a90ae62ea3306200204cc51552174cc72f9c97b55d9a1c1de7a004ac5178f5d8dae3f2643aea2f0593885593790b2d02a5b779c853807b3cf933189840a67cbdc7e064a92021d01b43c39259bf253b0a757fa16aa9b7007f9404058dc013f213c10d983bb6b37b688f0616df2675ece9c2936e800e92d9fe26c384be24303ec0bee74a870313288728a6cfa9d57b8197ab7fdc34b7f1eed4173fe4048e2bf822fefc461e80ad6b2e82f9e5a2829d83bc5715adaf186a9db625f895b378ff17aa7a40247f521e7a74e079a947384fe724f8f123ae6941f5935fd90cd821733a1a26aeb951d66239b4401a64f220d3a3ce24c0c60f177a2d10dc1b8b0e09426904d4b7e3fc6be1facc605a2a38af320e3388b71c21ea1aad83dca11df344507b91f73c9c50f9660679b640955b6a54b132861ede6e0932129b18bb15c4028d1cb58beb8e047c0348710c0d2a494ddf22419255808e84b7d2929177e31b4629ceba2e430b755d5598d3979fda859c8906cabe406b415440839ba01a7751101487a6dcc72a90f521f036046a9c91837727fd544f66abc6e58259f18211ab4f60141026d129638ddbbc197fa08102134b9a5e84d1b0b68f27b15abce8cc1ab54758c74cf927ebae8b24c02c0568b99ff797dcd641f9d68f824f8ebac0c7bceca8bbd9b63f6276c848203c4448c8d302570a2238f1b4c6e7bfc0e1eaf4efc1dc271f1afee07b72232b3ff13a3db39cc700ed77783f43e746c1375f35152ef7349faeb76902ae4a5cd8f8871b89a8090600e5b3cb7060ea6ecca3a47a8dfc6f7bc02b4dedd17f430caa24ece79bc523af12394a6b3cfe663c4a227e64fad651033e97cb5c787433cee6c802ef569d453292e0ee46c5f8590f796380739c4c3bfe9261e1aeb0a4a63b73461723f5adf06c3d172d6e469f7e21706ef9691d02ed380024efedb8e896cda700c62d93dbd0c08a7a899fc84bc32a9e5b502d853e5126156f6b5c1d1d776a0a803050d3b7e29092311b5aab80067e78894b93a0c39cf9ceb846c410d8fce9b80968258a7aad287e30575992741a78a71c477c284d56ff0a7a092e7f00357442ee53dbd097626f5fe37630ac8f93ecc0e165e9dfe13c9beebb57c7acbe9605c13617d8de5c57371bb4a7a89cb1178c426c48501851d97c302b0c5284d2474ca880e3cedf802d431f8e501eb3d096bd39baf0f86299de7608170e025f395a48371692d88f3385831172107270aa6e4e7c7aa4b3fd59d195be24d82ad316e1bf15e319c118f7a680bfd4e7f08d1eade84e1e6ed239b9a07d78e2a318ec5b0b7169e17af6935640cc5a41b7357e477d5e9039924e10bf21fa8f44a8dc9b4da928b361f2e0080adada3ce02dabc76e61b7eda6205ad824c80718390de2754c85287ebe8da62042570411cc1c863abc9fd26c120aea4725ca0d3c9e673872f5f1f634c08bf80d3a60a28958feeaef259f5d35ad9b3c97eb4ca9b817207f68883e1f01810d6b5289813423bb81a9b1833e18454fe0e8a08b490fe2f57ad71b13796fbc8eb09128fb6420866253fe075bba071d8a6bd8aea15c44623a8d309a3603c1fd2ae52ebc0f60ef538f9f4d4646701b8f964ba80776681531c8eb1320b2f73746f3863e5c066fe27b61f0589bbd85be52ca6da7cd886366bc0dc2b97fd02b581d2af5faa76d58c2b6c35de007528755a3e85665dce4698f54259e3fb9a2066416a328f8db55f1b4db7d8b6ed4f45d128c33d58f2c34096d4c1e8ede406d99d50e04ca25f8c881051e35975471f36df5876827aaa91d7a572901a9d57ec18a36e3324f9ec617e64487c62e3f744610805184fe11265e608601e4a51bf8569f99ed660e6ee48a7beeead371dbff6f06b6a84d14be3eef834fec6a8fa272ae6ce621ad757b534da3b7404a4f0d4b258c207bf3fad8ee8fea7e9a9f80d2fe4cc00ce561663c700100ac37d87b39c02e12c4b35314b51ff89b5f9abb474bfbdc4c4151a77f2a046ebd73d9d97177c4484f49a39f53ae902582a00d87b4752ae30a3e3f46893d37eacb82f50c1c769a068d55030e23689475d360e9b4c5bd19619ace6c46b0e5a952778b0174a816da17f082decb571652bcfbafe9b3a86e85c6a36305a5f4fe86c2c4b942240f1bfcfe45e7e36ce703dfa94609e7c14e83af8d74d7e6f26ebb00f9d9d4a8e047181cec102a707580505de81275892092c97d1d6ed3e24464f61bf1289d663f807c8a5a0e8d401db0d693ac818417f8c5e7188497856535e344f085e3a51c08f0ba6f0280d9082c87cc911d4ae045a772b2034d2bb0e107ebf8134f2273c7997a6ff89da9f5aa809dfe27ccbac8c35847d3c1fe4d1445c0ce774e912cbf1b2c54f8cf39f4819142901fa54d6e906944a08c8b3da7fbc854208c9a045619026175cbc0e4ea27c8ab2f37de842f2dbd824ca6ac9dc87a8ff83cef67f55536e079021bf3998d2a64b7feb86c0167b943ec87d8c9d15f377664f9b32cc29f7701da0c342c1b75063d635db276fa3970b704ed7eec18465302e9578e61386bfcdd45a155d636d328b04d684baf6a792e0a471ff0ba234036cd997e6bb64f9cfdf3148f67bdda3ffb07c7d3812a156e74abf50dd0da243f0c920a33b9af24a1afc9bf4d47ea868a1efd9cd09c527aed1ca6b5de6f8be949641b47cb5de48761c2b673d6f6f823cd7d35ef19124673d534586ca572c69837876ba8ff8288a3aba59c35344732c8a4e5516a7f0d56d1e119299aded7a73c20162f16bde35d5904aedaa851fbb2176e23efb33d0f0c8472e0a89334740890e1cf892ee79f48ef30670628bc0cd4bf528bdda4ad5cd7f354fff227b50df83fdaded1d3d1f31719853182c5545c21091b02c6da0399d8bf62acfec65f37172649b45cb6a0859d427d3e7cc37b8785797d59613641fbf434a945b1a2f2cac771054f7f6133119e26e57a92a25dfa18aaa62ef224bfc128b1ef86a19b73153e614d35910cc65a53eecea098bb00fadf200c2279790e1352f53e99711832fcc56f5e71116c47d1862c4f85fcedcdfb5b9c03c9e9ab981935f70cfaf3493d541456f7bfc1aad535037f113b63e8e93fccc51577952c8f932f1a37c39e622c4cdbca5e1a1b44bf7f834a76fd121a553dda38152842b6d34f0098494a565d6a6538ddc85f3bdbab505e3ef83a8a23033d01a2868c50272d0f5c03a7f3bf5e0c8e0b11d3a84cac2bfbfdf4b2602c47208437ecb16c2161e3874085b9fe863341ef99c8f4d366f766ad9e2ec8750e7482201bf14e125f7bfe7f19cc602ac0b96a28255df40d41ae15b9f1596b99cec3bee65444ab69f76e299f1305d039672a8b17cb67e22c93fbd7ec83b828f150bdcf9f20a3777a98eebf3d449d6f75a58629fd1315830f0bd0f77f5bcef20bef126e1923a8880ebe89a7f74c0f5a49dd1cee881eabd2d16368075e58d2f4f00f72b0fb2e44420f87a53c0f4a71e3bd3061c9b3540bd1a781c8d63eb7d0c9f172ebaa06d355e94ba6fbd101ea60571db2f079d12723ac30600e14c7d6626affbe3d445289065b0e3e54ede1d4236350a73fa5c9c53929f2354fa9a5a307a94438f3a54f46b0073502bba972cdef1ddbfafb1ed7c05802e082df4530e0453494a6e83f0406f7fce48693f66332111f711842e88ab10dc0d731370b376e4a2376537cc63ee787d9c1b1ff0aedbd46595dc183c1b7263f237d3dc96140b8a84762fecb76ac20d66ab9069795b09bf66527b7bff4e6c57a67c43139745c7fc1dbec49211daf66906ef4355dccfba3f504b3bed1ed259a28f7f77fe19b361e3189ecfc2b06f732c4dac4f6233920004859968b8297ff5c7b79e30c4dff8ffe19228c78416c98e3502e4b209fec3933f67a3b09b5d87f6631c70aa7fecd673e39f6540b80ebd56d2afd95dc08174abed36d6e48fb8168b980b61ca91389f150e56ec749806f729edaa0cf1ec4d2d8cfeacb47a655407109a4ca2279b23b3ccd44dc2fe64028f90fd58045a7562e55d9299f8ae2014d67d1cf4728c021f444a22a4b99a41b7fea3d479a20fe6e46674b064de2c45ffac150bb20167dddeaf8e26fa675a4e207f993d7ab44df1150b1c66296cda640ab107525b9c1a06d4523df546b739c49e010e8138cb7402fb88e28effc9c95b34932fd5a9db0a25b07be551f9ed3776dc8317a3582ef659980ae4bee6ae1177742d25f14f16ec0ce0fcce83939ba545b21b892d3e612d1cb8b442d5d9ed802923e7fbe766f2a1c280f37f82602595d77cf0c17fe3085844fe609768883c360ea090a71300c50fde366702da3c37ce109e6bfad0b804db1d512d47334a29f390343b37e60823297f4f39ab989dc3e23406c13c6f2f0611e5ac4259d24629f106011402cbc05e043bc1df4c844295db83663d67e3cdd857dae13d878058af2d949e535236739cf609813f96ee44a76d6699f417167e032d21750b8d7f04b9160c3b9c851a6c82e24245230f6faf73db5d544a208620a3065a6d07744fec573b674d4911eb8facdfe4b6716d85c5640196bf230bac72c5fafad38b4f4ae7d50573924ee60ada2c0b8d6da3956835169bc8e2373b8c9ddf806567e9bb35d60e16a4931f722fa98175c46280b15f939d7f92041a5102d7a9487e913a33d0ce9b13b3aad59351ff5b0671f85f43b00757ffe77d14bcf4c04f284271366b8774a5eff78f9432b26fe9c9bb16510ed95b12ad0a5ac37039cbba2c2742e278123b4e5e40bbfd2459dfd986febc2025f93786e1ffc458e7b2a41e1f86b06dcc825a26249399f1d673459869907af74bdd6dcd48338bc841fd42648844370d3d42a3bf0dc16daa8f63b8a69f50d442e0db42031e189ccc9add1ec7f74427a2b5a8675e93f033d26715f9ada6269fb72a19098799f366f01e8b8d9e92c34b2a22d164f2aa0142d42ebeaedaa2d9aa61b249b1422326f32b8c60bf281d21988909bed50f7ba679e9899629b7e654b8a5df01ec0fd3b4a5a2a1aafb1d84714d450eb0285df9b42534f0fbdde1cff9f9768c2cbd0512f037c279ec7ff5b49f7cdc1e2a5f18cf7414a3050c0bad5c083e40baff231aeaa21219c170149c0581705927e8c6dc3bd1f256aad62c6c7cac1bc165d838d026db317d7c0861381e845f5388ae356e9482906b6ce778b3fc55eeb24809b92836c3ff94c28e7721b6bbbdc12a9606615e7c6fc3af4a206be3d87ee2a5da0685f41483aa1abe6aca8b4b922e14260433091f2d9f975b3c2302b9237327f73d43e1f92e9bb635ed51878863263882c8361b3846b926922884a81303e2196779d25843f65aeaadc1dbfb18e538e1b603c74f5fc37846f9e3a16a6344a7f9b931b06cd0f09a70aa3a2f12535c2df5cc59287720feb78d3056db023ae3bacad4142af3b8d831e163c0d8dca28449c17401c379a43f1dcc53188b82224211455341fae1b2ab4f2fa3ec8b13c4f2fa75900e39be7ec184496af2896168ea0ee74e9233744c84d0b1c4ce7b6368a917e3a3049006355611964c602d37a0f66e8c5a3abdaea91fc6573146317740ddcc0ccc9a86a8b46bb83fe0fc7a044c9326baf7f5e12965c6b011a803fa98f0c8486bb8274cace633ce7815513c795caab227f0f6821e62d77beb040efbcd56e1017fae03a54f1069a70088b669f7b0c8df204025bc268794c6ee85bea354602cd05ac51323b921e0ec2c5d5665c0dbe59206fa506017c5a1a0a258af6957e155b10b8646fe53f21cde101d421acfe89f4e65058c2fc6bf2b368d07ef8f3d63b18704379372b625e96cd0cc7e8b7b36ac1aab4cd01a62bca05b9c35e6585bd2dfcc6ad2fc62a0e1ee6421632f448876faafad10d2e1197ffb9475dc3e36634f6de485737a4f39863dbb922ab14e71180725f402cd63a9d5aa6bb59c596bda93a835ae47595dd7994b32df18a25ace7dc14d2633b46162e4855d0eeab629e781f8aee820d02db24f41f72d8eb16532b675279bf4665dbb4068c33ae4fcc9ef76b1986570f9afaa5525d60fad92851c83119ec3aa450a07ae8dd86aafd2d7d4db8947c2c61b2b421b9b17700843296de0acbeff6eeb1857c3410e8bc4b89288c39409062df18ea4f9bfcf3b598d9dbade69b8d743090e346f2b629737af6a9e78fca2307e6d06011f02219078b4b16b397b97bfe5ed963a0685ace416c5612de699f1c2a50602cbce8c91f60cdf20886d253bf95f9e558b1801ed1cae9385208bb1dd6978e4e70b0d38d3c6563ffe0e40f2f22d46e87c12b22a7cd95f7ec9daf33a4a3739550e5e8b8855bae53f45f7ee589b2f24d8679796170cb7288395e42fe6c36fdeef3aa8d12571a0676c379ed200", 0x2000, &(0x7f0000000880)={0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, &(0x7f0000000580)={0x90}, 0x0, 0x0, 0x0, 0x0}) mkdir(&(0x7f0000000000)='./file0/../file0/file0\x00', 0x0) syz_fuse_handle_req(r0, &(0x7f0000004280)="b936b4f16ee763f4059aee2fdb5a611d772b6ca56d1b682def8868e738e366b3dd31e77c3f1dcd68f992fbbffe08c6f7a73f5ad6a628b7e0ae8d394fcfa2c9d8d7c9f9a984436a9c8e4352aef9043eb3dc0305333952b6294f017c27128d53aaa584307ccd72cf441276bbfa2a7b371ea257145040cdfe1cafba2f5c03a4ff75b97f377a2cd0c4101a6ad7ae3401866cd97ff78a494bf6f1f144c71f71de83bb7551f1224670694ac03ec30444c1e75a44cb6002263ad2e783522d62044131d2ba7969060ca9b2708c3ac9eeac6d58afce6b544476e9dd3aaabe36a94004bf5ed6ff1b3ee145b971abcd1192dbab3bbb319e8e0680c9bab76e7f8aa8c0f2944e918cfc260020669f20159c113d09d38d90d9087f7ae98d37b9348cf5b8541578715847b6a233d0e8cb12f2cf01d2f8290885ab88f6fd9c72838ac112e63daf77c403447b03329b1f120e910b7b2de6144fc3ae906f5db93669c8c741af3ac4f71e2f952277e59b2b57700197fcdb38116b1aac162b5a50390718b4a4975fa27505915c82ded9afa4ba2f7b0571df5e234f6785f6a5c4f4260b25ee6008588958fa626861703cbf055b1fc3b767ec39b6b2b9e73a53510f753e459a59568fe5013d43dd81f6f3a062eec2e43cdad3e7225d9da12a149df37b2d137b5d85a0c86feb46ff6343ca1133e119b94f080f5127bbb073f8e84667302acacd7cb4ec6e46daebce766f3bb1d61e70cc45ea0c2815c4004432bc57ba12dc563f8488d3f9864b9ab15fdbbdae34f7357e91f5445b01acb2df8e20b10189b232d65cd2a2e6e52d6c4d3924663b83d4ed226cc4ff9a6b41650bd5eff2020c8f72c9549ebacd9f4b03b51d77d252bfd158f7a39c11583b238ad4023ee0128ab3c0583a7b638e15435397eb34f9c24acb03d8b3ad5e5749b45f6803ab96b95d32f37e4aa83bb735ec49110a3a106182695ed4e865470b655b0095a2b427650f07d847d544bb96de3be335b4ac229521ecfa3fc4d58dad885952931e4ff50f4f1d1d1ee8e1da49a0a19518cdfbd9ae0de604c1af5f0b0ca2efe3d148af3abb0278a8382a2d8ccbc678add3b9685291286feece123d9b47b3113aeef4b0422235284bd2d1861bdfe38f2d0750db6ec7474ca545ecf2e182c7f29fdf2749b9f759f32edebf96b4a33100c8f1c1d4d922ad56c4c4b1070e5d1884bb72ce03df1daa025e96e35f594d2bf73d8b0cf5559223212b83065e71475d7954833006050a0cf35d4eb0f7b189c9936a4177360fc8de9da68f5a0d748c979beedb8ee9d16b46d48c16bef05dd51b4df9db6c3546b5cc6bc3fff9788f4f07f99bd98068f347cb4a31a08323293e2994f0220d875052bd80086f44b07ccc02f9e8f9610ffd5b9d3aa19ed6247702b21ab6d472f8fe99c97f98238fc73ffe9908278bbe92efffb933d565c907e8640604584442846e3f17223b5f9f1766437d7f60e7260a78c8cf6d094825a1229d84f6efbce4e751a511f70d88ada46e3e3c8130571ceecee9f45ac802cb8cba506e0ef10322f25aecd972ac7de6cfe7db5fe274c0da083c0a4d772440789e765438045231e209b5b53b1acea480f0876e112c3c6f4863b0676e7a60b00cd957f893f82ab35fedb539024272ee43f552b3357c73f9612838987b10730262fcf359ba03e827fff425544034f7f9dabd8bc8168058ceca5e3852443e35179db4452e9b0bafb85153bab2182342d43d947b6562b469f360ee9ada067ed843eba73f920f5590d42e5bd24727a012544c347cc0b71182b98008b25ccbbdfde3cccb7f75eae21931c5cff372691807beca11124ebf069afaf969ea7e46ef6a10a45aae457f60b5149449a099b4c9adce1db24eabf7d7890e0bd9f7a1c22e15f56a87ed0fe0d299fe52f59cdcd0f91b7762d7985c4051df3ab25cad5d6582abd7ab739aae540db52d292d9964793b46367d14e6296672f346e2252beadd87ed9f2b9ccf6bfd3f338d4bb62bf7b413c04ca2ed5c1eeb32d752fc19e50e2c30203184f79984b4fd6d35ce3b4ae5ef3fd4250a705a0cdd7576b62bdf11cf579fcada58330bb6c0530c65c41ff05c7370c23b760ffba3a7ef8fdfbf575dc7a67571f3cbee1e45f8cdf5e02a70b67978ad0d33505f33d62efe301ebe00c7181bb3b6d145a90a970db0edeeeec7be7ec88ebcf75b5b1a866f86bc9a99b916bebd9ab88be1f3503ce3b029a78249bca8fe4f5faec12127b03e675a172492a53dd4556884f394b501c5adabfc060a73c1205a52a5bda9868617075e589042f4560fa55ee57f4a3b9f60989622be219cc57fa0e24bee12b6182db5f5dc38a1f569d283836bd8a0b26b1f562ed72e33ca3de2ea109b4499da0cec2e964f7b1aa020517c168bd85d3ecb2cdc36fa445706be81d9ae07006bd3f86728be483d0a45975c147f4dc480c5921130a659bfe0954dea25434bcbe0a11ce3fcc354c874875ed6d421ce14cd078e9cd1a3eecc74915f091863b5e91ea253c16cc7570962093289ebaf6f2f44b8edd917253012e455074c12ad908fd0722017667eb74c271903bdfda65aaba18ab6921e3e0eed546c2ee2006ef6205d59b2f04da48a951d24c326d7924a5500b33706cf3c8972f6d9ccdee7a9b4b96f556c1347662c05b8663e7f1e3d1e703c1f71693138242783b55e6e176328f69299faa5fa93908ba99fe3b4e9b186a59c573579e3ca8926d93ba9337f51a01e274ba942a9643ab126d58c6bf7e07a2332a8bbde862ce94517f670196df4786270ba7e1c0c17e957f2b46b402cb0597a9b1928051d56e875d76fbed3a34afc62aaa92c050577897eebca73d4d8c56ee79a4b9f5b178a0e0af46b3c729620c4bc70ebf2c173249f08b182be902a4ae8ad82a356512fa195925447f8715e11bae08a51966350ce501024b3aca616ed05c49a87327423cb42d73d838d747f381c69a74531a521fdfd664b1c13a353f43ae43ea2527fe62dcefa4c979c70340ae3a989d6e23537edfb893a0ef58094b8ef5dc306631c003655f3c3362fcd3b15997a8bc38ef726cbd2de3d4273f827a3451c46ce7cabcea216d948529e32149873a7cd4d969dd3faee1bcb170ffe9b034535d4281156eea56a4424e8f6e6be9d9e24a9b9bfc23cdebd2c3a6d0615785374c39d101b17b32ed60af3b7330c23779e6b31b347ddfafa8e896a414141560f229d1416c88234dda6bd4828ac5de5730a07c2a737cdf2670528aa15bdb98822f922fa3c18cff86d68f60e6f04973f314b54807b0a7e1077df9fd8eca40cf0acd53aa61d63c709a98d31a5719ed2e962b8e666b76a2f377794b65f9b5a61964e4de97135e1034910ca72f7ab262b0709dd58869264be463d3730037e20881fa33a276277b0f95b6800dfde415a082d2547c0d0e31eca9bb7827d0dc6f32c7396c13a044156ad3635b8274a6b2473661dc3a375f9bfc94f583834fd0b7875c55eed735b045365da5d6de4f598f5f7a84fbcb58b413c58bd1aab22aa63671424dd0ddb431a22f0fb600541e298db1d79a14a065c98b516ab43ba7faad66c1dbea91d3bc3672d2ba7842068c51374c093f72d49e8bd5872e76e8ecd92d494a43e60963caf7d85befadcac1c1f1b2f2aad00846adc795925e7e1c55bab79b0304799ace66ea88127d4f8edb70e96bf4757ed0e80e4d222683f932779fb1846769858495331051382b9468289219b0df1825a0abed563f75527e8187bf4b53c5076f0b660fbdce49460dcd08b78fcf07f99d984c478f9da01c7ab7824928be871f633e9e24702574196dd8fbf009a3b726590ff688036e777aa339b04445e0f7868a0020245c879a6f71d5284cb9a7bac80a808764a3d398a53d5e7a7f2ea1889af97ad7fbbee5e3c8f130e6e59da30a32abe57999ed21149bcce3e4383559003c1bfbe91d5d84384b8c11d02d1480980b63150ea885a05012695a0ec7fd5120fc4d92d0272fa14461851b3b3b588bb5342dc843ff56f40c29cb709e68a2530a77e22c4217af7900c53bdecb812df85d3a7e605de9ab6867c21638257f850d816567a8a2397ad555745e55070a2a8762ceaa25f0cfa69d205e9bf6f2c9edf5495137b7d04faee33efc390df26ebf94c7b82c14437dc055bf40b407ca9781c08e02c6f142ae2dbc1e4aa55dd1e96315ed1d3ae194f99b2328fb92b94ee5b5afcd1c0b37a709e613a308774a692af6a8a178145f98895aa86c0e42e4e5603ec229b50bbd06aedfa3695f253b4c6e94df246aef7577e63dab8f9f411901b354c07a439ebf85cdbf57f477e75f589afa7c9f7208462338a95a292ddf0f61b0e4abecfdea3a4acefdbc0df5e937a958474ccba5f818eb843ae52d161c3745d171c9ce0304fb7c85a18603b23a1f9eb7f6643aa48c82820b92f0d3c500e3d968f7ffc437dc521c946c7e12d0041cb476a6c116c0e84c473e0ef1f3dc5d4b2e245374db58c80de0f8a8027cde295dc8f47cd0a029697e5597e53131ad188ec8ba09b2994152fa7b2e05d2d30edf9f78a40376360ce3bf0f8fd04430077d2ced937dca8f62a1d024b54ac34ecd63bb4b689684c7f2bcb7150d496b66119a0f09b47ebba000737a6f465793ee79cb4bac652f36bbc75d4804964c8fcfd406b774751d1bfe87998d99f80bb1c4ed783d190b670bf6c3539547893c26c2a7b1a793ae8be1f31982287a8fc033b99b03075c1b589f73f78e61aeee9296613b4453b6c809dfe7c520d014aa7a1ebe2e46f31cd3847bfc79e88e9569a6b611c0962e57c401069046a0659fef9fdb4c6fe6e110edf99ffb275ceafa9234bc807c3a02e4b1c7d7cd5453b86376df436378e7887676b008a8f9110c0d37fca42c484eb7c66b4787588245ab95f510f6067d7bd41ff6a256fd17b1a0e426966d94f937050efdb184ebadb595e87a5535b89e5c7437181ae089298892afcb527b21eab46685395defe5ffba8cf6b3e08857af2f9c6db9494673dc14c6f82fac16e4a27185d32e25bd4982c89ff622425aca6531e8a0d78afa3939793e77352b34bd5796b722debb341801fb0a9f3dacdf3f49f21ac28a472d6a17691ab1c5382c41fc8fe8679add82547fa485108e920be5866690b24ba73e4ac73aa8b64245f9be0f4748a671a3fecf9b297e5c44b19b3e092ffec942409078a89cc3ae4939b8f91b7f4891f599e68de56197a9e85e42a279b3d36b3bfe937dc56d3f4c9e5c0c697fa03d69e8408e1bbdf49d81aece00565657ed6fcccf723be514d7b728f5f4bb1761454d07e6769ec969de454094a94da915fb8bb5cec855c3e9fcd3e77c590215d98aa88a9cf6394127799b47dddf494b387d5b0209fe195f6e0024ebf52225602df846777bd297c6c69ff4fdf28f15b431ea39d6a46bba3d31d82fc666826247922f7c1ea20a6cdb19adf3c1f879f21112e21fc9637326d4b91007e89912f0d958fbcf4135f72ddd81d861196916a60d483c4d86c19959a1c7a92b6d0e51effc4deb05df57a5c5e444d490c2040ae7263c50540d7d9ac213207107887b8432ffb0b39d453443aa0ac107536e8cf353fc12db53fa950dde1c5700864c8ebf7df6cd6aab650be658ae9581d9b6bd1a2ab072cd10fe644cf7f43c8a072854dfd0fc84bfb170c35fc8dc4ab4c746f4326491f8723336a7e19debb4646089fd252577bbfabd538d8c1ca98c4d63b33adfc1f9ae5001589335ef5a5d24b197ebfa1798030ed8928962706f0af40545d1fb9fa1343deee8ce78fa4977aab68b5b97785cb940e7eb6b80096fc31a5284fc2f10becbd93786ff3b33f57db979464d2a54b677981b6db95962d161bfd3f860f0b22075c6a50897a9c342a479f81d204dc917832b5a73341b1c1241bdcb6dc7d8c711d4eec290d980df3f12cc09cc06b1528ddd6f3f1f41859cbd1dcfbea457bace251a834dd4629e5b132582dc8b9aceefe3e48a66217ce98d72a1778f18486445e4878fb6529346bd83475bc42fb06b196209293eb4ed23d8217298deb8c392e8f0eb4df1f2014bf855aff8fe010ffd5dd3da8a77dd1d25c70f835e5cceccaf9ed95b1726abe70b4189e8c8ebcfbfa45f7227184841e6aef3e3e7eec37f9832507f7572cba814c5478546b22cfb3a8d0300f68145c55f6d425417bceb5b24a9408e4844f6a6a3c143f36ca701ceddfe44fa496453c48d288c5b6f08f1471586659d23c29a255bc2a8d0e1869bc91a9650d018bc3e20eb2f7089e29977faac46020b01cd01fedefe484dfa617431f02a106931410d64ab365bf8ed068e0235f8d2757fed289282686a55dd15a847b758842710d9c483cb907beceb86ac35a240dc3810320137cad68b451bccd49d7a285083df9d5f0df8592b0267e82dd82aa78155c26d26bc4faf4708927a114a3d069299a488932635bb46c96cf3678af463f960af3e750cdaeb322e10099adb7e3a966c43f68c32923fa9e70bc28f98d9ea54d24f3806ac9edea3206def17285f693ed52f26e39ef7dd91924a0e09213d9f2efb7339b7edb6fd58f6b88836d8804a20fc88f5988432c06ac030d05a4caeafe7f34a4acce70a6c82d98010a0dd412d2e789c0c652387dc31b3c4f6dc6dc4ba37951df7a4fc99d578e834a914d3921492cb4be9a87d7ee86e1b684cf6705110e8ec3278d7fc9fdf2bd9a2565cdb2c8abf4a0d8b5ad1ebf549cc05a11e09487978f9edc5e26c3d9ee31066e3a3dc836b585f537aa54542d6e8ccf2d72a9c66314a2572923e289ed7984dce71a424898d356eb4f17c7841ec6c54c8511e78f50b2bad1ce26cf5c490de6c5c397f0249d457ddeb155ff1f6685dd3959f21e33fc42f2debfa491f894fc2e132dfe23003e35c6dfb8decf3d066f025b94ca7dacb385a2a231128f4daf033418b380f191e8b730985fb06d5138e0cec450546f3782f237c13afa17f8f744a53992c9019e10e221f0b829ca395fe407ac85380391f91aca3eb67a489e8df617865f1f206fad7bb3e2653cd0469dc3990951004497cd2a2eb0042904c3ec2dbcab26a0bc46ea60b2240863d55252c3a8ae2939d62519217e31ca7b0b6a494c63b52a16a289fa94981b61be6dd9bae18c5b9dede401285766a1c556984339b24d33e77092ac686aa7b76700bed940ee0ac42397a6098d5c189324c86e1763896307dc9f2f87f2143260c680ffc5d2ac871ad79a07a3cac1b80580ecb4b084178a4422ac960a80ce795492ecb223a3c93176f929fda86e4d15dd20ea2b6476eb021c99034f2c2f37d07fc22380af7e1c045ac1cf5efe0c53e1e8b67729fd243af295b561618c579f445d06157123f2b72492ebe69df8bdfa24e76cbcadf06ac578a61ab767f132fa619d33e67de3173f1c2c2f218cbf884939dcf2be098c6c30c99931c9b0ca6ba745699557d1d7d47c1a7f5baab8360ee9f801ab3ef81cb4882d6489b322f0f3ee2d74e57795b1880b304865d6edea26064a540c253c4c2e86c91a68d2024e76a4baf72dce44e7ca6b88ac462dba127b064dca5f030a6bf7ff42a6857da8879e14f4a831002794da3c78950d4ada6c4f29cab756fd2b541aff1b14ea040db16a2ed55b5caa0f973971910f200ac7d85319a1cf3fe20379a7c28ff7c37e3be538bf00cfafef11fbc0bff8e9e15d9b3f51cd7d4e5e73797fcfe4a2e2941ac27d310896d4c7751bbbf5b83621a9e260858c96d50a3cbff44060f92726ee7fb01ba4717fc78a9ecf3c3d1ac9acbfce3858821bb191359297eb344f1febf18076fcf70a3c709e2cb9208464756fd2c393b1687b89675a4d809b113361222be0e3bbc80703c23f62b940bb417e44eae9d24360a06ae0564bb365f725cec952b7d63181f3307904104e410f1bb386c58e72bf9560056c1b363219391c2f315a6f6790389428cbfb297e15d6404ca65baf944b1198a98cc392bf946e941e04f0aa38be6d788030591b54c49753b16948d2759f5dd3987c12c3aa7d2d281d996466d2057b28d8cb24fdbb4367b287b38e6988c942505224971d06748523c7d48811e58e54832e43cf5e394b2c56ff797d9cbe8c3eea0d16c07c269fd380fc59ce40ede15305ea67f6efe2980a92702050ec281f69b94ea0b2b5024527403663b00efa6790539b74b4b542150739a9e0ba507e834fd9f3f2e8c82add5a77fa2ad13450ea51add9907ccb71735336c64c08c9d9a1b5edef707fec52240533e899fc51da053dc13d9dc7d42ecaa51452fdebdf775f7bbbd022370d9cbb71d9b4e44f7658dd67dbc99ac3ed0e0695549c8bdc12a6757a3096d40af346339e03a4d6597da087393f0c8f045943479f9edd83dbdd955ec5b8cc8c559668834a616d1a3b4b20eb4418cac54b57ab75e9b6d564c61e784d0cc8f238ce2f69b243aa580c3037f126de36f88325beb2e0b1fdb9d41f627d34b71e3b8541fab2534a476bea7d8a4e28ba13456ac0d0135f11648f1d63951840faf5d52949f9688a5b9a89339f8bd161de6989fe8fc3b1c305202918c04c4e4b350da1f9e72d3511faa91c3efb7ccdaf8ce5adba6803831f959198a30d31b9dc8026b71650700cd16d7b5cb4ccb8e47d1235b4790f4e29903fcfe0a76734aa5d20ef5373305fbf6319c5ff447e62db6f6ab72c6e4ff12d211fe74987a8e227c159f04223e844891f3af776c86cbfce6f7d7ef2d536c33301751d488fbf2bc10028a32063dab7bf3b6d6e682f3bb20f1752f532d09da4d7789ffee733a8ae0bb64b4984e6fb7d70e49219e72fd42dafb1e23594ee624d453ff39050b4bbc58303be87c3bc15e5532175d002a97f5721ebac384e95a096be49a6fcb1b4bcf229acfb5290582e6b4e41882efdf484359b9469d2c0f927043dcf3ce24d189d275413b2318e211c963836e7ccf5b129a5daa2cf6451715721796268f92299dab9080c999afc6e378ea357a092ea67e4fb120de26a8dad0532081663dd9bada0f5d84d3761d5662f119451d0753290b6629c3ab1bc6307297374c79cc3a6ba94fce62b485daa14377ace889919121abbf8cc786e3281beef59b8dc5600447e924560845c6dee71c289e839345db644e19a31fec26641e7370982654fbf6c540eb2118ad223186ade395f495254e237a9018c729115e348d30a8406392fa4c3427ba329e178099ee2a881e3439866aa325c4dbd42cb17c715592df3bf5254dd8714b6e6a479c4a42b091a09ab1416ed00ddde6dc4c618dbafd9e037f75d93c312fd83a75c5b0b8f2990b7807995ee7e4f8f4d324aaab4b4e0ce76ea33a0a01414a7da91c00ae9926b0974c3a9d4e4a02329e2c31fdf04bc3e4aeeb5bb30b04dfcfd3b0d02b894d7a76dbd63b1ec113a387256b6b7c05f652ae0d59971fa8ef3dc04aed14853b54b355f846f70b802a23662ac7211f6181318ba9a641932bd204c75d54d9f2649d12efc2b2657b3b5113776c272b911e7fdc0ec19270915051e798cf852ee15d97146f76c9c2a4f03eab7ea217b42fe92685b0c5b7e309bdb8a19d1c3e563d339cc8d5c29bffdaff7108310ea20a7d44e406216aaf6008c2826d6f35c7560632ef27fd4949a6128818f90962b09dcd74a61480281b9079248bf9b0b9329b648ac145920be7351df8d67f1c1ae65dcf14a6ddc6ed0aa10ca4aaa43d2920cba0d67ca9933efebba364a206c369387c90f9f8a292a531ac05b89a0924dd5de15af3833278c8b76e4b82434839891a4e0c3b1bbdce43dfa45fe04af628c8608e845e27bfb6217bc6667abb799b7a67d3699c40d6caec1ed689352dd5c3f6e460d0d644fa1bc113af70399a11b5f83b7b82cd34e0437138e04f36056060fc4f9d48f77160f553dea9d3ba5bb8115c7a90e521c03e4bbbe0960d10998e79d1569d9ec13c9e22a94f49743b59782e6493218e491292545397fc0422e8955e395478d964611c94a50df54b7d109c107f21edba24b66fc0139e45ace7d9041a221fe2df541289ba84cd30deac9f1c0277d253f9a917f1edd27f7a2f5a3d0e294eb90dee68f2d165e51144377757c07918fd5d8d2d47c23c626af3d0e14d134231d37018eb4ca934334fe2fd748897d71bb99a42d8be70c08c483d4777c3731063fee00eb53db4c9365b78f347c543eafbfd0b39cf9c24a724c4a5d077cc05f744867871f2c3016e0726bc24c3375063e028e2611caa29a9071cd6aa751969e576c866f4c047bbcc29ac47b152e98c95dc67bba33f4a2f7e5eeafe42b2e82bf30e70ffdc39d5262692a2fc2627340fb930f2660f1002b847c8eae265463020c5733e85861b6c025506b90327553660018564e58749406fde37259f459d64a95b959e033b514925d699e64335eb8347a621d63fdbf5e9d35f7267d6fe974e3c3840de0f879661edc479c24a7990526e0ccb593642c26f143c05452a06b9d4b706306f03807c45351b86188d8bf9da468602cfa0e4bf0fdcd15fd3b917796e494119a72e25041e408ca7b156262de6ef9df6c1cdf4b582f491d3e7681d9dfc027d1bc79de1b6793f63a5e0781a727e8f7f2fb127727a9555b6afb33c64bedc6c3db1c183d5e45f22f250755868fdbd42e2ffb4c492107e060f9bce0c280c490254f66aec19daff0040ea1551790e3c73966ad1da8c1d00a01235793c2143fcf7f69d91c34c441a1e796b786b2bff67e618f0fec152cb0bbf739df708492cc5976c5122aded08ba35c3bce1095991557605c63673250b8f94d1b72fe353cf69fd190ccf650108941c7c9ebbec02580f7ca0db626c58aa28c6415c75c66d6235b0975144329aa3def3c949fa90972755f526282e293836dc1558b9cbb56554fde46895e59ef50748ca51ae90b265b69570b1136da0c73d05fc22fc21e0b0532c003e46f4a026e786e8e9b3181edf656e651b7a6954bb2978b5a1dea9c1595795c0c142afda12cf23d998f692a0a0fd46b377e74c145c94651faf3a8dccc03c60ddb6e1dfc379cfc5473c5b04c143fd50240e4201a4bbb5ff9625159ff5c9351423b82ce353dd5f1e7eb738e19e0f68a460e81f7ff2efe67db325963212d035694d5ce157f381aa76c7d92fd5b85b22b95b73c40cd5dd37282884bebb23bc31cd587476c602bd0a31a62784a3461a97cf233e1b72de8503c0dbd5678121323278d4ffdf60e877c4bc8ddd0a6fad2ba3c23735fc46cb7bdb13bd3afed9303e0bc0a19ac43b697a715ca2af3f0cf190f89ca4164ed5b194eeda983cc9758f49b3f2cdb19f22f537391aca75e5469b7112b138db877d4772960bc2fe2edd2ed8b42c64a58a7df9c1006e943bba5c25bb339e1bc380e38489129bf5396cbfba1a0f3687cd2f0561187ad4e1c76090a3eaa71bfed488afd4790cc4671b23b3226f400fcd4fc5efe35b24e5634c059daa7837c48343794465ce62a4c52e7a75564cebc4d212b9a355e74f0970039aee9b009d884c4d11b5fa140fa07663972c0db4a4350e51eea026a0dc377912aa002431f8b553b35641522fcdba43eba0c0d49a178fc5b0cfdebf129f224a474dc2ad209a2891d5fe90c3a38374301bc402a8d9f13b2e88589a23d43610d76a1bf832d18381c677d1475074fa063e500", 0x2000, &(0x7f0000000e80)={0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, &(0x7f0000000a40)={0x90, 0x0, 0x0, {0x5, 0x0, 0x0, 0x400000000000, 0x0, 0x0, {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x4000}}}, 0x0, 0x0, 0x0, 0x0}) 07:24:15 executing program 4: mkdir(&(0x7f0000000400)='./file0\x00', 0x0) r0 = openat$fuse(0xffffffffffffff9c, &(0x7f0000002080), 0x42, 0x0) mount$fuse(0x0, &(0x7f00000020c0)='./file0\x00', &(0x7f0000002100), 0x0, &(0x7f0000002140)=ANY=[@ANYBLOB='fd=', @ANYRESHEX=r0, @ANYBLOB=',rootmode=0000000000000000040000,user_id=', @ANYRESDEC=0x0, @ANYBLOB=',group_id=', @ANYRESDEC=0x0]) read$FUSE(r0, &(0x7f00000021c0)={0x2020, 0x0, 0x0}, 0x2020) write$FUSE_INIT(r0, &(0x7f0000004200)={0x50, 0x0, r1}, 0x50) syz_fuse_handle_req(r0, &(0x7f000000a680)="f2dc9578c61994cf938a7621ac049a6d63cea9535d30d26edbb299ce0df1caaa2d572e7e3f138b32748824c179e9069a074599f8c5142a6b07bd3e7ce9f5f5730cc35d00260c16aea6d183cfab504764e7a6b5ca82062a069826c6a0dd415f723d11e7ad580efce4718e67ef24c2b058a5d5bcfac5d10b96cc5f30ae1e55ac6743858264d5e83bfc6251d690a684153599ce666fadd8124bd6e9552ce6803d3ec3db5c49c36aec21a2f8e83c270a34f4c8fc5bc0aa9bb27990d3d7d7377ccaf59431a50d729cfea9a95192edd372dc611197497d92e42c0ba8e55d60e0945344cacf86e4f5a06bb68d15da7bfd091340eb87c66395930dc8528e1898f6c7231cacf11bf35b0b45373e7b7e81c91842216477966f66f43db170e8b5df42312208748d394c7da23b366ab71a87c6f966ac6b768347dcadd2c876f24bc4c7edf7c792e6a5a154fe0f0699296ed5f66e614f06a7e0814bccdf19b69e1b8694673528768065b3347d9a6dc3bbab2390e3e5f3bdd93cba7d7e3180548091c4d18ff32f598f94a9c569c352568e5e577ccc792e58044457d1bfabd4d569106252bf9f7f389f82fde530468d5c79cd4f1b37dc7f371c31fba401f5643a3922e6fad6d063d590d736ed522ce3b1fa0520727a0b5ea72825e3969584266415a676017b3ab22062acff919b6d2b67dd1fce30af908a95fe9d221b0a7c06b8b51bd7de1748f3f446df7edbbe1df499cb1fb7bffabf9e3382923ec67e5b7fa8d2cf40553e26ec112272858e08919d5ae4e40a88adb207de714a1631a748c028c867db0553938680904875597c15094be7c7f2537efb0581217b9485a6538cfa10afd888a822532c9c1fa69adf9c73a42cbfc88b2fd499f61fd3c2e306ec76205d8ab8155b8e124aec587bcd09b1a60978410baed82afa74f28859bdf0d4ca0f950b474d723f85f1b6056b63e86d52a65838bcb29a238725ed6a05041037dfb32319ab917aa91a911fca8a0aa0e567f3a12947a8ab2f7639928b9d0868e8f842e1a923751fe24fe42a8dfbccd291e6773aa64cfa17b1d38087d259d8a4e64314bc0a054e6eed5466f247618d082b1effa1f242e2120c11f04f068a198d38adc770a356338af053cfd99005dbc42804d13bc0a2b2329f37845a9f056aba133a82b844c59fdbf17cd765563fb79d5ed6d5034365e519947f0d47f3dd0867446898637fbdba769ba8f69d15d79fcadd9207789179f0cbca87cac20c859bd8910c5b590b02f9ad384827306c51651e3d562d3ae450b27b07f989ce333429a0d12898553c08f8a5a0bde11a93dd58ccf66ef37d6b02b5afc1462dd1375037420123f0c1dfcc23e8c29a078ba09e829e7efa9a5e47a98f776d67f4cdd948083b213ae88565fbd69cda8806cd3b5006cbba3f87a13925f0ee4d3b5428825fba78a6664f889df80c9997ea730385b88a1f3142bce20c253c2bed257097eeeb63836c65582187ec19b376e1a2c786f4dc4571e9a8cd9015d13fe8987cf5bc269a5fea8c1a77b1c11dede4c09a315a31a0d7e67a17a28675742f66867b7588714a33a4168bf1da227c2d0c88c6edc5cf9c265bdd34b71b3fb87a14ce2a89dbdc56fa4a8664d6b9e7b717b8dcaa3d489a8d2c75ebf03f6493afabb516ba71479ef8aedf651f9515eaa44601888ad2438db03eaa1c0f5f479087f3aa22df5dae1984ab59f17ea356f4abd802eee24c78d230d3b5a54faf896bfcf881b9badb4e84a56f159e5725165c041d89b8534c48a751bae12bb2299013d301964e7b8f27f941db96c9d592e886972f733ff15994e54727ca4cbf884450933020bdd8dd0889c8c1ffe566d58d9e9fe6467f453b21f88c49eb6007816830974829b0732d648e5dc53eb4cb51f10634b48fcdc20af089f92c4662c6c0c4abd9cfc165476d8a33d5861bfa3722a7d4e36283cc79c2d715797651a3b77d34bd34893ffcd8cc78df5dd4d4234ed70e4fc9a8cee4a7bb8eb7a07eff1cc225786c19564e3d374943b254a166f8a43504036fa0288c7b10b1ff3b5684b46863fafa0338c50fcf7daf4cf5f5a742808f1d0207229ba0bff4344ee4613d606a101c47c07560cdb0efd213aac2e010fe5bb183193541a8ea262cb3a3e2c543d93c76c9d80c1713868681724822e27a80ef3289b874be77680f6c7fc6384a8a4740959e365976a01029a9cb27484aba0e9f55683856ca2848797c8b2846bc9a43ad7f1d150d4d3b4c1e832a34ad83d3e56d7c3fcc71d02f7daf7e6b5a1704c5550577e1f482efe3f5446aaa019f9396ea63b9d14570ba3468cc25145307c9d7dd4447e400d087f46467ae3a98e6dcaac53f6a4d71ab6ae1c45ec15424cebe7cf1dfecdf8fb2404bda64e229178b0b199474e79659fe16e96e927be38a3a1b7d9a2aaa7933d627a3010482fc32e06d10a6438577280fc08bfd954d4c7251d3dbf99bced67c1cf1c6299bd08b492ee8a23723f7d45e78520a0bf889603f20add15063ef612ece4bfc1a31c425628248e4d8ee261a0fda95a1e5ca1432b0f23ff2dac77fb97c62969ed41728f02a1f2ac92d9d344076384758ed89fbda9fdded9a6a980a5161b90f840397fd21fa3de514bf5a09843a9fc5a08895c6d5e416d836fc76804f4163c04cbea5a9bf46f1e1da583e8c0e1168c1e13c8a2ab1d1ccec531e2fb44c01652d92127156eed652ec30ad6be2e7ca4650cd3085603a848447e32b2e7001959a5bde0e28ed1e1962838acde3e521931e7f0355caeddb565dedd2da5920c0661a645e56f9c5506aa53552a042ff8ddcb6a3a166d819fc728483258eda01ba00680c99587574aa20467421b208ea987e4a009981b752710a484babc7b090112aadb589534eabde01a518520655665e02575ac70ccc31007ce737b148d3e92a52d4ea651f951609275734bf82f8c987db1803559209660c52678094d94ae4f4b6d706f847c09ca69c7fedecf51c1b2386a362faaa2f4ba004bf80be503523e29152b24c2709070ef8c79059252eff39c300da295b2a246ff8907b281aedddc2688709d20ae65551f91c86fbf37398eca2cb8d760b8ffc7f3592ed30dd2c88f8f518819cecb4b094e808572d50a76d3d7365cad98e8c9348361e28d98f44c5daa382017548bf75ef7be9f4d836932a6530204fcd2b7b0e1958347c1396e827ff5e63ab07081413b2e34e2e4964f82772656b49d0f81ac99879dec266019fe7794abf95dafd63e069fc1662df1fae47e90f4196241bcf3235181d23b37cb0ce9a352afa5ccc8fc863e1e9f7ddf5cd4b123a1360e7fa6ce1885afa332e5b50ce46a3cdde2cf16395af3b3b0ab8b8d01e436d08e112f1d121dbc64a503e50e47d4af2d29f7c2c6f55ad224da459ad765033bc26f398173c3bb80137ba6a21a5e87c9c5a9eaf41831b4f8f225aa9c64f2e54fab0e0f75b06c0f42fe7b6f193fdc5f9a6b24f910d08b1f6bd1aa6ac8ae7b0c397bbb80931b28995aac03e53a3d1f7afa034b1887e374cda3917f880171b53d64364633eff727147bb673d1208eae02bcb5eb2623e826ae46c4464297e79d0f146ae31dc8d684e97362a325a77d4fabc0dc14a58f9e538e3fbfc689049e7c07b98c9c2eba5eb3e37c7eae83c38406eae03749fec1de11f9dda4e6fc3f57b3daa50d8cb6135e58b3be8640e85b7f6874c7a46acb95d6f1702cfcf1ce53646e94c90a36660e343d59ff886e6d16848e149f0239135609caf2381df9c5693b7437fa14c9aab495d70d1945affec2d97a0a207a78b122e2d45631036f73c63ea2cc3959faf31b8a7906db710b733f3ab44e42b01a928b8f7ad5d741cd4ab0daf214c9c08acfac158a9b6b63ed9f6e2aec941154a08e01338c1825c3b1a6482a30bbbaf7b5d0db3a3a7446bb540136ef5ddbc5e4d376e2455c46b6342633086a0d683f659d5bef13a019f76597441560671c50ac74a1d903dfd37a08e578201e5116e22d79ad8e58d2e6f0123d5f8d50fc264fd993f0aab1adbb920bbc31ed062a59fce5341cb682cfa78d1576106ab1c7a9b0efcdfd47548986f8a17ae737ede69ecb7c417a4d3270890e191351d841ebf330b267e63c4c4add2b55a66067fb032f18a8647ad0493d2c841a4921807625178a99ca9663b11c051bb0fb6a05d4365538d3131d09174cca1954d57cca8c1c8700312efb2ed0c139af9dad373a7c45b24908bf9141f3c85d86a1605cc035b98866d32e1866808e21f1c4ff0c3b917a63b0a6a1fa8154e2a9f91cef23667c55e07629d49d86d3f459274e549f3521a34f62e4c9a7d3546eae2c7a230bfba1d06ff2906c90880c2d17cd01ad2a8f7dee1fb54f994b1a2d360190f31676787f9a4ed1329e505c961d73e7c1c6296215ececb09b08d71fe81b57f4dd21067bc3680e07f7c0ec0493fd86c3cc4e0ce99bc712547799a76ae011c118a0c0a038d49227f04459957fdce11244f03fb75bc9d979e46ee5e36652a73658e2430ac16b0688794440da15074fdde4cc64ca9b6c912eeeb41c424216222ecf59611856f79289c99767dc273f7d4afe46aed4f538e9231b9e55bdfd57f427437a9fe5453441beedbd30a9b61bae7ce36dae79a260247c51d0ed5e92df31b114c62b201f9b1530926362eb447c57fe346213ca9471ff851b3a78274d91667fd8a2142be1027c641a650983685e241ab3b7058e6fd9313e9aef348df5389a3e5b5919c2fe31242649e5fb4442d00e114bcb776d21cc70c13e3f0e6445300d0fc934087c5d9858e556bdf3384cad33fa7b94f7287c13178d7e7f1411888945d69aa3afb805cf13f720a59e7bc4e48da029eb97b0b276342f88ec6a997f13cd8bd3f2abd1c317fbc6701ec8e2c89a7f6db91899c020478b714a40fe01b9e30487326e435d6c0643c90cc542e7ce93907f513fe27f217a597adba58aa89e8f25b9874923ca2a9b99512e1ebd7e5661d2c460709713ff9e55d22512c4bb4380a2023e0f62ba2265df7023ec7e98b52bc7a9a20030210445e04e03a5706bf28136615319deee46b0f8ffc63a2596f81edb161d85d95ea826b4c56cda064b7730bbbabc1413c5c41951a811b9079b0e736a8bf34a65456468a4d4dcfbe07ca92579f72e2afeede987bcf6fb02cc85383989344e1dd34dae00d7bbda1055c69cbb4b60649ea0f2da4c731a1deb1fac2db5a102d837de2f35f3eec936c9f0b8a90ae62ea3306200204cc51552174cc72f9c97b55d9a1c1de7a004ac5178f5d8dae3f2643aea2f0593885593790b2d02a5b779c853807b3cf933189840a67cbdc7e064a92021d01b43c39259bf253b0a757fa16aa9b7007f9404058dc013f213c10d983bb6b37b688f0616df2675ece9c2936e800e92d9fe26c384be24303ec0bee74a870313288728a6cfa9d57b8197ab7fdc34b7f1eed4173fe4048e2bf822fefc461e80ad6b2e82f9e5a2829d83bc5715adaf186a9db625f895b378ff17aa7a40247f521e7a74e079a947384fe724f8f123ae6941f5935fd90cd821733a1a26aeb951d66239b4401a64f220d3a3ce24c0c60f177a2d10dc1b8b0e09426904d4b7e3fc6be1facc605a2a38af320e3388b71c21ea1aad83dca11df344507b91f73c9c50f9660679b640955b6a54b132861ede6e0932129b18bb15c4028d1cb58beb8e047c0348710c0d2a494ddf22419255808e84b7d2929177e31b4629ceba2e430b755d5598d3979fda859c8906cabe406b415440839ba01a7751101487a6dcc72a90f521f036046a9c91837727fd544f66abc6e58259f18211ab4f60141026d129638ddbbc197fa08102134b9a5e84d1b0b68f27b15abce8cc1ab54758c74cf927ebae8b24c02c0568b99ff797dcd641f9d68f824f8ebac0c7bceca8bbd9b63f6276c848203c4448c8d302570a2238f1b4c6e7bfc0e1eaf4efc1dc271f1afee07b72232b3ff13a3db39cc700ed77783f43e746c1375f35152ef7349faeb76902ae4a5cd8f8871b89a8090600e5b3cb7060ea6ecca3a47a8dfc6f7bc02b4dedd17f430caa24ece79bc523af12394a6b3cfe663c4a227e64fad651033e97cb5c787433cee6c802ef569d453292e0ee46c5f8590f796380739c4c3bfe9261e1aeb0a4a63b73461723f5adf06c3d172d6e469f7e21706ef9691d02ed380024efedb8e896cda700c62d93dbd0c08a7a899fc84bc32a9e5b502d853e5126156f6b5c1d1d776a0a803050d3b7e29092311b5aab80067e78894b93a0c39cf9ceb846c410d8fce9b80968258a7aad287e30575992741a78a71c477c284d56ff0a7a092e7f00357442ee53dbd097626f5fe37630ac8f93ecc0e165e9dfe13c9beebb57c7acbe9605c13617d8de5c57371bb4a7a89cb1178c426c48501851d97c302b0c5284d2474ca880e3cedf802d431f8e501eb3d096bd39baf0f86299de7608170e025f395a48371692d88f3385831172107270aa6e4e7c7aa4b3fd59d195be24d82ad316e1bf15e319c118f7a680bfd4e7f08d1eade84e1e6ed239b9a07d78e2a318ec5b0b7169e17af6935640cc5a41b7357e477d5e9039924e10bf21fa8f44a8dc9b4da928b361f2e0080adada3ce02dabc76e61b7eda6205ad824c80718390de2754c85287ebe8da62042570411cc1c863abc9fd26c120aea4725ca0d3c9e673872f5f1f634c08bf80d3a60a28958feeaef259f5d35ad9b3c97eb4ca9b817207f68883e1f01810d6b5289813423bb81a9b1833e18454fe0e8a08b490fe2f57ad71b13796fbc8eb09128fb6420866253fe075bba071d8a6bd8aea15c44623a8d309a3603c1fd2ae52ebc0f60ef538f9f4d4646701b8f964ba80776681531c8eb1320b2f73746f3863e5c066fe27b61f0589bbd85be52ca6da7cd886366bc0dc2b97fd02b581d2af5faa76d58c2b6c35de007528755a3e85665dce4698f54259e3fb9a2066416a328f8db55f1b4db7d8b6ed4f45d128c33d58f2c34096d4c1e8ede406d99d50e04ca25f8c881051e35975471f36df5876827aaa91d7a572901a9d57ec18a36e3324f9ec617e64487c62e3f744610805184fe11265e608601e4a51bf8569f99ed660e6ee48a7beeead371dbff6f06b6a84d14be3eef834fec6a8fa272ae6ce621ad757b534da3b7404a4f0d4b258c207bf3fad8ee8fea7e9a9f80d2fe4cc00ce561663c700100ac37d87b39c02e12c4b35314b51ff89b5f9abb474bfbdc4c4151a77f2a046ebd73d9d97177c4484f49a39f53ae902582a00d87b4752ae30a3e3f46893d37eacb82f50c1c769a068d55030e23689475d360e9b4c5bd19619ace6c46b0e5a952778b0174a816da17f082decb571652bcfbafe9b3a86e85c6a36305a5f4fe86c2c4b942240f1bfcfe45e7e36ce703dfa94609e7c14e83af8d74d7e6f26ebb00f9d9d4a8e047181cec102a707580505de81275892092c97d1d6ed3e24464f61bf1289d663f807c8a5a0e8d401db0d693ac818417f8c5e7188497856535e344f085e3a51c08f0ba6f0280d9082c87cc911d4ae045a772b2034d2bb0e107ebf8134f2273c7997a6ff89da9f5aa809dfe27ccbac8c35847d3c1fe4d1445c0ce774e912cbf1b2c54f8cf39f4819142901fa54d6e906944a08c8b3da7fbc854208c9a045619026175cbc0e4ea27c8ab2f37de842f2dbd824ca6ac9dc87a8ff83cef67f55536e079021bf3998d2a64b7feb86c0167b943ec87d8c9d15f377664f9b32cc29f7701da0c342c1b75063d635db276fa3970b704ed7eec18465302e9578e61386bfcdd45a155d636d328b04d684baf6a792e0a471ff0ba234036cd997e6bb64f9cfdf3148f67bdda3ffb07c7d3812a156e74abf50dd0da243f0c920a33b9af24a1afc9bf4d47ea868a1efd9cd09c527aed1ca6b5de6f8be949641b47cb5de48761c2b673d6f6f823cd7d35ef19124673d534586ca572c69837876ba8ff8288a3aba59c35344732c8a4e5516a7f0d56d1e119299aded7a73c20162f16bde35d5904aedaa851fbb2176e23efb33d0f0c8472e0a89334740890e1cf892ee79f48ef30670628bc0cd4bf528bdda4ad5cd7f354fff227b50df83fdaded1d3d1f31719853182c5545c21091b02c6da0399d8bf62acfec65f37172649b45cb6a0859d427d3e7cc37b8785797d59613641fbf434a945b1a2f2cac771054f7f6133119e26e57a92a25dfa18aaa62ef224bfc128b1ef86a19b73153e614d35910cc65a53eecea098bb00fadf200c2279790e1352f53e99711832fcc56f5e71116c47d1862c4f85fcedcdfb5b9c03c9e9ab981935f70cfaf3493d541456f7bfc1aad535037f113b63e8e93fccc51577952c8f932f1a37c39e622c4cdbca5e1a1b44bf7f834a76fd121a553dda38152842b6d34f0098494a565d6a6538ddc85f3bdbab505e3ef83a8a23033d01a2868c50272d0f5c03a7f3bf5e0c8e0b11d3a84cac2bfbfdf4b2602c47208437ecb16c2161e3874085b9fe863341ef99c8f4d366f766ad9e2ec8750e7482201bf14e125f7bfe7f19cc602ac0b96a28255df40d41ae15b9f1596b99cec3bee65444ab69f76e299f1305d039672a8b17cb67e22c93fbd7ec83b828f150bdcf9f20a3777a98eebf3d449d6f75a58629fd1315830f0bd0f77f5bcef20bef126e1923a8880ebe89a7f74c0f5a49dd1cee881eabd2d16368075e58d2f4f00f72b0fb2e44420f87a53c0f4a71e3bd3061c9b3540bd1a781c8d63eb7d0c9f172ebaa06d355e94ba6fbd101ea60571db2f079d12723ac30600e14c7d6626affbe3d445289065b0e3e54ede1d4236350a73fa5c9c53929f2354fa9a5a307a94438f3a54f46b0073502bba972cdef1ddbfafb1ed7c05802e082df4530e0453494a6e83f0406f7fce48693f66332111f711842e88ab10dc0d731370b376e4a2376537cc63ee787d9c1b1ff0aedbd46595dc183c1b7263f237d3dc96140b8a84762fecb76ac20d66ab9069795b09bf66527b7bff4e6c57a67c43139745c7fc1dbec49211daf66906ef4355dccfba3f504b3bed1ed259a28f7f77fe19b361e3189ecfc2b06f732c4dac4f6233920004859968b8297ff5c7b79e30c4dff8ffe19228c78416c98e3502e4b209fec3933f67a3b09b5d87f6631c70aa7fecd673e39f6540b80ebd56d2afd95dc08174abed36d6e48fb8168b980b61ca91389f150e56ec749806f729edaa0cf1ec4d2d8cfeacb47a655407109a4ca2279b23b3ccd44dc2fe64028f90fd58045a7562e55d9299f8ae2014d67d1cf4728c021f444a22a4b99a41b7fea3d479a20fe6e46674b064de2c45ffac150bb20167dddeaf8e26fa675a4e207f993d7ab44df1150b1c66296cda640ab107525b9c1a06d4523df546b739c49e010e8138cb7402fb88e28effc9c95b34932fd5a9db0a25b07be551f9ed3776dc8317a3582ef659980ae4bee6ae1177742d25f14f16ec0ce0fcce83939ba545b21b892d3e612d1cb8b442d5d9ed802923e7fbe766f2a1c280f37f82602595d77cf0c17fe3085844fe609768883c360ea090a71300c50fde366702da3c37ce109e6bfad0b804db1d512d47334a29f390343b37e60823297f4f39ab989dc3e23406c13c6f2f0611e5ac4259d24629f106011402cbc05e043bc1df4c844295db83663d67e3cdd857dae13d878058af2d949e535236739cf609813f96ee44a76d6699f417167e032d21750b8d7f04b9160c3b9c851a6c82e24245230f6faf73db5d544a208620a3065a6d07744fec573b674d4911eb8facdfe4b6716d85c5640196bf230bac72c5fafad38b4f4ae7d50573924ee60ada2c0b8d6da3956835169bc8e2373b8c9ddf806567e9bb35d60e16a4931f722fa98175c46280b15f939d7f92041a5102d7a9487e913a33d0ce9b13b3aad59351ff5b0671f85f43b00757ffe77d14bcf4c04f284271366b8774a5eff78f9432b26fe9c9bb16510ed95b12ad0a5ac37039cbba2c2742e278123b4e5e40bbfd2459dfd986febc2025f93786e1ffc458e7b2a41e1f86b06dcc825a26249399f1d673459869907af74bdd6dcd48338bc841fd42648844370d3d42a3bf0dc16daa8f63b8a69f50d442e0db42031e189ccc9add1ec7f74427a2b5a8675e93f033d26715f9ada6269fb72a19098799f366f01e8b8d9e92c34b2a22d164f2aa0142d42ebeaedaa2d9aa61b249b1422326f32b8c60bf281d21988909bed50f7ba679e9899629b7e654b8a5df01ec0fd3b4a5a2a1aafb1d84714d450eb0285df9b42534f0fbdde1cff9f9768c2cbd0512f037c279ec7ff5b49f7cdc1e2a5f18cf7414a3050c0bad5c083e40baff231aeaa21219c170149c0581705927e8c6dc3bd1f256aad62c6c7cac1bc165d838d026db317d7c0861381e845f5388ae356e9482906b6ce778b3fc55eeb24809b92836c3ff94c28e7721b6bbbdc12a9606615e7c6fc3af4a206be3d87ee2a5da0685f41483aa1abe6aca8b4b922e14260433091f2d9f975b3c2302b9237327f73d43e1f92e9bb635ed51878863263882c8361b3846b926922884a81303e2196779d25843f65aeaadc1dbfb18e538e1b603c74f5fc37846f9e3a16a6344a7f9b931b06cd0f09a70aa3a2f12535c2df5cc59287720feb78d3056db023ae3bacad4142af3b8d831e163c0d8dca28449c17401c379a43f1dcc53188b82224211455341fae1b2ab4f2fa3ec8b13c4f2fa75900e39be7ec184496af2896168ea0ee74e9233744c84d0b1c4ce7b6368a917e3a3049006355611964c602d37a0f66e8c5a3abdaea91fc6573146317740ddcc0ccc9a86a8b46bb83fe0fc7a044c9326baf7f5e12965c6b011a803fa98f0c8486bb8274cace633ce7815513c795caab227f0f6821e62d77beb040efbcd56e1017fae03a54f1069a70088b669f7b0c8df204025bc268794c6ee85bea354602cd05ac51323b921e0ec2c5d5665c0dbe59206fa506017c5a1a0a258af6957e155b10b8646fe53f21cde101d421acfe89f4e65058c2fc6bf2b368d07ef8f3d63b18704379372b625e96cd0cc7e8b7b36ac1aab4cd01a62bca05b9c35e6585bd2dfcc6ad2fc62a0e1ee6421632f448876faafad10d2e1197ffb9475dc3e36634f6de485737a4f39863dbb922ab14e71180725f402cd63a9d5aa6bb59c596bda93a835ae47595dd7994b32df18a25ace7dc14d2633b46162e4855d0eeab629e781f8aee820d02db24f41f72d8eb16532b675279bf4665dbb4068c33ae4fcc9ef76b1986570f9afaa5525d60fad92851c83119ec3aa450a07ae8dd86aafd2d7d4db8947c2c61b2b421b9b17700843296de0acbeff6eeb1857c3410e8bc4b89288c39409062df18ea4f9bfcf3b598d9dbade69b8d743090e346f2b629737af6a9e78fca2307e6d06011f02219078b4b16b397b97bfe5ed963a0685ace416c5612de699f1c2a50602cbce8c91f60cdf20886d253bf95f9e558b1801ed1cae9385208bb1dd6978e4e70b0d38d3c6563ffe0e40f2f22d46e87c12b22a7cd95f7ec9daf33a4a3739550e5e8b8855bae53f45f7ee589b2f24d8679796170cb7288395e42fe6c36fdeef3aa8d12571a0676c379ed200", 0x2000, &(0x7f0000000880)={0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, &(0x7f0000000580)={0x90}, 0x0, 0x0, 0x0, 0x0}) mkdir(&(0x7f0000000000)='./file0/../file0/file0\x00', 0x0) syz_fuse_handle_req(r0, &(0x7f0000004280)="b936b4f16ee763f4059aee2fdb5a611d772b6ca56d1b682def8868e738e366b3dd31e77c3f1dcd68f992fbbffe08c6f7a73f5ad6a628b7e0ae8d394fcfa2c9d8d7c9f9a984436a9c8e4352aef9043eb3dc0305333952b6294f017c27128d53aaa584307ccd72cf441276bbfa2a7b371ea257145040cdfe1cafba2f5c03a4ff75b97f377a2cd0c4101a6ad7ae3401866cd97ff78a494bf6f1f144c71f71de83bb7551f1224670694ac03ec30444c1e75a44cb6002263ad2e783522d62044131d2ba7969060ca9b2708c3ac9eeac6d58afce6b544476e9dd3aaabe36a94004bf5ed6ff1b3ee145b971abcd1192dbab3bbb319e8e0680c9bab76e7f8aa8c0f2944e918cfc260020669f20159c113d09d38d90d9087f7ae98d37b9348cf5b8541578715847b6a233d0e8cb12f2cf01d2f8290885ab88f6fd9c72838ac112e63daf77c403447b03329b1f120e910b7b2de6144fc3ae906f5db93669c8c741af3ac4f71e2f952277e59b2b57700197fcdb38116b1aac162b5a50390718b4a4975fa27505915c82ded9afa4ba2f7b0571df5e234f6785f6a5c4f4260b25ee6008588958fa626861703cbf055b1fc3b767ec39b6b2b9e73a53510f753e459a59568fe5013d43dd81f6f3a062eec2e43cdad3e7225d9da12a149df37b2d137b5d85a0c86feb46ff6343ca1133e119b94f080f5127bbb073f8e84667302acacd7cb4ec6e46daebce766f3bb1d61e70cc45ea0c2815c4004432bc57ba12dc563f8488d3f9864b9ab15fdbbdae34f7357e91f5445b01acb2df8e20b10189b232d65cd2a2e6e52d6c4d3924663b83d4ed226cc4ff9a6b41650bd5eff2020c8f72c9549ebacd9f4b03b51d77d252bfd158f7a39c11583b238ad4023ee0128ab3c0583a7b638e15435397eb34f9c24acb03d8b3ad5e5749b45f6803ab96b95d32f37e4aa83bb735ec49110a3a106182695ed4e865470b655b0095a2b427650f07d847d544bb96de3be335b4ac229521ecfa3fc4d58dad885952931e4ff50f4f1d1d1ee8e1da49a0a19518cdfbd9ae0de604c1af5f0b0ca2efe3d148af3abb0278a8382a2d8ccbc678add3b9685291286feece123d9b47b3113aeef4b0422235284bd2d1861bdfe38f2d0750db6ec7474ca545ecf2e182c7f29fdf2749b9f759f32edebf96b4a33100c8f1c1d4d922ad56c4c4b1070e5d1884bb72ce03df1daa025e96e35f594d2bf73d8b0cf5559223212b83065e71475d7954833006050a0cf35d4eb0f7b189c9936a4177360fc8de9da68f5a0d748c979beedb8ee9d16b46d48c16bef05dd51b4df9db6c3546b5cc6bc3fff9788f4f07f99bd98068f347cb4a31a08323293e2994f0220d875052bd80086f44b07ccc02f9e8f9610ffd5b9d3aa19ed6247702b21ab6d472f8fe99c97f98238fc73ffe9908278bbe92efffb933d565c907e8640604584442846e3f17223b5f9f1766437d7f60e7260a78c8cf6d094825a1229d84f6efbce4e751a511f70d88ada46e3e3c8130571ceecee9f45ac802cb8cba506e0ef10322f25aecd972ac7de6cfe7db5fe274c0da083c0a4d772440789e765438045231e209b5b53b1acea480f0876e112c3c6f4863b0676e7a60b00cd957f893f82ab35fedb539024272ee43f552b3357c73f9612838987b10730262fcf359ba03e827fff425544034f7f9dabd8bc8168058ceca5e3852443e35179db4452e9b0bafb85153bab2182342d43d947b6562b469f360ee9ada067ed843eba73f920f5590d42e5bd24727a012544c347cc0b71182b98008b25ccbbdfde3cccb7f75eae21931c5cff372691807beca11124ebf069afaf969ea7e46ef6a10a45aae457f60b5149449a099b4c9adce1db24eabf7d7890e0bd9f7a1c22e15f56a87ed0fe0d299fe52f59cdcd0f91b7762d7985c4051df3ab25cad5d6582abd7ab739aae540db52d292d9964793b46367d14e6296672f346e2252beadd87ed9f2b9ccf6bfd3f338d4bb62bf7b413c04ca2ed5c1eeb32d752fc19e50e2c30203184f79984b4fd6d35ce3b4ae5ef3fd4250a705a0cdd7576b62bdf11cf579fcada58330bb6c0530c65c41ff05c7370c23b760ffba3a7ef8fdfbf575dc7a67571f3cbee1e45f8cdf5e02a70b67978ad0d33505f33d62efe301ebe00c7181bb3b6d145a90a970db0edeeeec7be7ec88ebcf75b5b1a866f86bc9a99b916bebd9ab88be1f3503ce3b029a78249bca8fe4f5faec12127b03e675a172492a53dd4556884f394b501c5adabfc060a73c1205a52a5bda9868617075e589042f4560fa55ee57f4a3b9f60989622be219cc57fa0e24bee12b6182db5f5dc38a1f569d283836bd8a0b26b1f562ed72e33ca3de2ea109b4499da0cec2e964f7b1aa020517c168bd85d3ecb2cdc36fa445706be81d9ae07006bd3f86728be483d0a45975c147f4dc480c5921130a659bfe0954dea25434bcbe0a11ce3fcc354c874875ed6d421ce14cd078e9cd1a3eecc74915f091863b5e91ea253c16cc7570962093289ebaf6f2f44b8edd917253012e455074c12ad908fd0722017667eb74c271903bdfda65aaba18ab6921e3e0eed546c2ee2006ef6205d59b2f04da48a951d24c326d7924a5500b33706cf3c8972f6d9ccdee7a9b4b96f556c1347662c05b8663e7f1e3d1e703c1f71693138242783b55e6e176328f69299faa5fa93908ba99fe3b4e9b186a59c573579e3ca8926d93ba9337f51a01e274ba942a9643ab126d58c6bf7e07a2332a8bbde862ce94517f670196df4786270ba7e1c0c17e957f2b46b402cb0597a9b1928051d56e875d76fbed3a34afc62aaa92c050577897eebca73d4d8c56ee79a4b9f5b178a0e0af46b3c729620c4bc70ebf2c173249f08b182be902a4ae8ad82a356512fa195925447f8715e11bae08a51966350ce501024b3aca616ed05c49a87327423cb42d73d838d747f381c69a74531a521fdfd664b1c13a353f43ae43ea2527fe62dcefa4c979c70340ae3a989d6e23537edfb893a0ef58094b8ef5dc306631c003655f3c3362fcd3b15997a8bc38ef726cbd2de3d4273f827a3451c46ce7cabcea216d948529e32149873a7cd4d969dd3faee1bcb170ffe9b034535d4281156eea56a4424e8f6e6be9d9e24a9b9bfc23cdebd2c3a6d0615785374c39d101b17b32ed60af3b7330c23779e6b31b347ddfafa8e896a414141560f229d1416c88234dda6bd4828ac5de5730a07c2a737cdf2670528aa15bdb98822f922fa3c18cff86d68f60e6f04973f314b54807b0a7e1077df9fd8eca40cf0acd53aa61d63c709a98d31a5719ed2e962b8e666b76a2f377794b65f9b5a61964e4de97135e1034910ca72f7ab262b0709dd58869264be463d3730037e20881fa33a276277b0f95b6800dfde415a082d2547c0d0e31eca9bb7827d0dc6f32c7396c13a044156ad3635b8274a6b2473661dc3a375f9bfc94f583834fd0b7875c55eed735b045365da5d6de4f598f5f7a84fbcb58b413c58bd1aab22aa63671424dd0ddb431a22f0fb600541e298db1d79a14a065c98b516ab43ba7faad66c1dbea91d3bc3672d2ba7842068c51374c093f72d49e8bd5872e76e8ecd92d494a43e60963caf7d85befadcac1c1f1b2f2aad00846adc795925e7e1c55bab79b0304799ace66ea88127d4f8edb70e96bf4757ed0e80e4d222683f932779fb1846769858495331051382b9468289219b0df1825a0abed563f75527e8187bf4b53c5076f0b660fbdce49460dcd08b78fcf07f99d984c478f9da01c7ab7824928be871f633e9e24702574196dd8fbf009a3b726590ff688036e777aa339b04445e0f7868a0020245c879a6f71d5284cb9a7bac80a808764a3d398a53d5e7a7f2ea1889af97ad7fbbee5e3c8f130e6e59da30a32abe57999ed21149bcce3e4383559003c1bfbe91d5d84384b8c11d02d1480980b63150ea885a05012695a0ec7fd5120fc4d92d0272fa14461851b3b3b588bb5342dc843ff56f40c29cb709e68a2530a77e22c4217af7900c53bdecb812df85d3a7e605de9ab6867c21638257f850d816567a8a2397ad555745e55070a2a8762ceaa25f0cfa69d205e9bf6f2c9edf5495137b7d04faee33efc390df26ebf94c7b82c14437dc055bf40b407ca9781c08e02c6f142ae2dbc1e4aa55dd1e96315ed1d3ae194f99b2328fb92b94ee5b5afcd1c0b37a709e613a308774a692af6a8a178145f98895aa86c0e42e4e5603ec229b50bbd06aedfa3695f253b4c6e94df246aef7577e63dab8f9f411901b354c07a439ebf85cdbf57f477e75f589afa7c9f7208462338a95a292ddf0f61b0e4abecfdea3a4acefdbc0df5e937a958474ccba5f818eb843ae52d161c3745d171c9ce0304fb7c85a18603b23a1f9eb7f6643aa48c82820b92f0d3c500e3d968f7ffc437dc521c946c7e12d0041cb476a6c116c0e84c473e0ef1f3dc5d4b2e245374db58c80de0f8a8027cde295dc8f47cd0a029697e5597e53131ad188ec8ba09b2994152fa7b2e05d2d30edf9f78a40376360ce3bf0f8fd04430077d2ced937dca8f62a1d024b54ac34ecd63bb4b689684c7f2bcb7150d496b66119a0f09b47ebba000737a6f465793ee79cb4bac652f36bbc75d4804964c8fcfd406b774751d1bfe87998d99f80bb1c4ed783d190b670bf6c3539547893c26c2a7b1a793ae8be1f31982287a8fc033b99b03075c1b589f73f78e61aeee9296613b4453b6c809dfe7c520d014aa7a1ebe2e46f31cd3847bfc79e88e9569a6b611c0962e57c401069046a0659fef9fdb4c6fe6e110edf99ffb275ceafa9234bc807c3a02e4b1c7d7cd5453b86376df436378e7887676b008a8f9110c0d37fca42c484eb7c66b4787588245ab95f510f6067d7bd41ff6a256fd17b1a0e426966d94f937050efdb184ebadb595e87a5535b89e5c7437181ae089298892afcb527b21eab46685395defe5ffba8cf6b3e08857af2f9c6db9494673dc14c6f82fac16e4a27185d32e25bd4982c89ff622425aca6531e8a0d78afa3939793e77352b34bd5796b722debb341801fb0a9f3dacdf3f49f21ac28a472d6a17691ab1c5382c41fc8fe8679add82547fa485108e920be5866690b24ba73e4ac73aa8b64245f9be0f4748a671a3fecf9b297e5c44b19b3e092ffec942409078a89cc3ae4939b8f91b7f4891f599e68de56197a9e85e42a279b3d36b3bfe937dc56d3f4c9e5c0c697fa03d69e8408e1bbdf49d81aece00565657ed6fcccf723be514d7b728f5f4bb1761454d07e6769ec969de454094a94da915fb8bb5cec855c3e9fcd3e77c590215d98aa88a9cf6394127799b47dddf494b387d5b0209fe195f6e0024ebf52225602df846777bd297c6c69ff4fdf28f15b431ea39d6a46bba3d31d82fc666826247922f7c1ea20a6cdb19adf3c1f879f21112e21fc9637326d4b91007e89912f0d958fbcf4135f72ddd81d861196916a60d483c4d86c19959a1c7a92b6d0e51effc4deb05df57a5c5e444d490c2040ae7263c50540d7d9ac213207107887b8432ffb0b39d453443aa0ac107536e8cf353fc12db53fa950dde1c5700864c8ebf7df6cd6aab650be658ae9581d9b6bd1a2ab072cd10fe644cf7f43c8a072854dfd0fc84bfb170c35fc8dc4ab4c746f4326491f8723336a7e19debb4646089fd252577bbfabd538d8c1ca98c4d63b33adfc1f9ae5001589335ef5a5d24b197ebfa1798030ed8928962706f0af40545d1fb9fa1343deee8ce78fa4977aab68b5b97785cb940e7eb6b80096fc31a5284fc2f10becbd93786ff3b33f57db979464d2a54b677981b6db95962d161bfd3f860f0b22075c6a50897a9c342a479f81d204dc917832b5a73341b1c1241bdcb6dc7d8c711d4eec290d980df3f12cc09cc06b1528ddd6f3f1f41859cbd1dcfbea457bace251a834dd4629e5b132582dc8b9aceefe3e48a66217ce98d72a1778f18486445e4878fb6529346bd83475bc42fb06b196209293eb4ed23d8217298deb8c392e8f0eb4df1f2014bf855aff8fe010ffd5dd3da8a77dd1d25c70f835e5cceccaf9ed95b1726abe70b4189e8c8ebcfbfa45f7227184841e6aef3e3e7eec37f9832507f7572cba814c5478546b22cfb3a8d0300f68145c55f6d425417bceb5b24a9408e4844f6a6a3c143f36ca701ceddfe44fa496453c48d288c5b6f08f1471586659d23c29a255bc2a8d0e1869bc91a9650d018bc3e20eb2f7089e29977faac46020b01cd01fedefe484dfa617431f02a106931410d64ab365bf8ed068e0235f8d2757fed289282686a55dd15a847b758842710d9c483cb907beceb86ac35a240dc3810320137cad68b451bccd49d7a285083df9d5f0df8592b0267e82dd82aa78155c26d26bc4faf4708927a114a3d069299a488932635bb46c96cf3678af463f960af3e750cdaeb322e10099adb7e3a966c43f68c32923fa9e70bc28f98d9ea54d24f3806ac9edea3206def17285f693ed52f26e39ef7dd91924a0e09213d9f2efb7339b7edb6fd58f6b88836d8804a20fc88f5988432c06ac030d05a4caeafe7f34a4acce70a6c82d98010a0dd412d2e789c0c652387dc31b3c4f6dc6dc4ba37951df7a4fc99d578e834a914d3921492cb4be9a87d7ee86e1b684cf6705110e8ec3278d7fc9fdf2bd9a2565cdb2c8abf4a0d8b5ad1ebf549cc05a11e09487978f9edc5e26c3d9ee31066e3a3dc836b585f537aa54542d6e8ccf2d72a9c66314a2572923e289ed7984dce71a424898d356eb4f17c7841ec6c54c8511e78f50b2bad1ce26cf5c490de6c5c397f0249d457ddeb155ff1f6685dd3959f21e33fc42f2debfa491f894fc2e132dfe23003e35c6dfb8decf3d066f025b94ca7dacb385a2a231128f4daf033418b380f191e8b730985fb06d5138e0cec450546f3782f237c13afa17f8f744a53992c9019e10e221f0b829ca395fe407ac85380391f91aca3eb67a489e8df617865f1f206fad7bb3e2653cd0469dc3990951004497cd2a2eb0042904c3ec2dbcab26a0bc46ea60b2240863d55252c3a8ae2939d62519217e31ca7b0b6a494c63b52a16a289fa94981b61be6dd9bae18c5b9dede401285766a1c556984339b24d33e77092ac686aa7b76700bed940ee0ac42397a6098d5c189324c86e1763896307dc9f2f87f2143260c680ffc5d2ac871ad79a07a3cac1b80580ecb4b084178a4422ac960a80ce795492ecb223a3c93176f929fda86e4d15dd20ea2b6476eb021c99034f2c2f37d07fc22380af7e1c045ac1cf5efe0c53e1e8b67729fd243af295b561618c579f445d06157123f2b72492ebe69df8bdfa24e76cbcadf06ac578a61ab767f132fa619d33e67de3173f1c2c2f218cbf884939dcf2be098c6c30c99931c9b0ca6ba745699557d1d7d47c1a7f5baab8360ee9f801ab3ef81cb4882d6489b322f0f3ee2d74e57795b1880b304865d6edea26064a540c253c4c2e86c91a68d2024e76a4baf72dce44e7ca6b88ac462dba127b064dca5f030a6bf7ff42a6857da8879e14f4a831002794da3c78950d4ada6c4f29cab756fd2b541aff1b14ea040db16a2ed55b5caa0f973971910f200ac7d85319a1cf3fe20379a7c28ff7c37e3be538bf00cfafef11fbc0bff8e9e15d9b3f51cd7d4e5e73797fcfe4a2e2941ac27d310896d4c7751bbbf5b83621a9e260858c96d50a3cbff44060f92726ee7fb01ba4717fc78a9ecf3c3d1ac9acbfce3858821bb191359297eb344f1febf18076fcf70a3c709e2cb9208464756fd2c393b1687b89675a4d809b113361222be0e3bbc80703c23f62b940bb417e44eae9d24360a06ae0564bb365f725cec952b7d63181f3307904104e410f1bb386c58e72bf9560056c1b363219391c2f315a6f6790389428cbfb297e15d6404ca65baf944b1198a98cc392bf946e941e04f0aa38be6d788030591b54c49753b16948d2759f5dd3987c12c3aa7d2d281d996466d2057b28d8cb24fdbb4367b287b38e6988c942505224971d06748523c7d48811e58e54832e43cf5e394b2c56ff797d9cbe8c3eea0d16c07c269fd380fc59ce40ede15305ea67f6efe2980a92702050ec281f69b94ea0b2b5024527403663b00efa6790539b74b4b542150739a9e0ba507e834fd9f3f2e8c82add5a77fa2ad13450ea51add9907ccb71735336c64c08c9d9a1b5edef707fec52240533e899fc51da053dc13d9dc7d42ecaa51452fdebdf775f7bbbd022370d9cbb71d9b4e44f7658dd67dbc99ac3ed0e0695549c8bdc12a6757a3096d40af346339e03a4d6597da087393f0c8f045943479f9edd83dbdd955ec5b8cc8c559668834a616d1a3b4b20eb4418cac54b57ab75e9b6d564c61e784d0cc8f238ce2f69b243aa580c3037f126de36f88325beb2e0b1fdb9d41f627d34b71e3b8541fab2534a476bea7d8a4e28ba13456ac0d0135f11648f1d63951840faf5d52949f9688a5b9a89339f8bd161de6989fe8fc3b1c305202918c04c4e4b350da1f9e72d3511faa91c3efb7ccdaf8ce5adba6803831f959198a30d31b9dc8026b71650700cd16d7b5cb4ccb8e47d1235b4790f4e29903fcfe0a76734aa5d20ef5373305fbf6319c5ff447e62db6f6ab72c6e4ff12d211fe74987a8e227c159f04223e844891f3af776c86cbfce6f7d7ef2d536c33301751d488fbf2bc10028a32063dab7bf3b6d6e682f3bb20f1752f532d09da4d7789ffee733a8ae0bb64b4984e6fb7d70e49219e72fd42dafb1e23594ee624d453ff39050b4bbc58303be87c3bc15e5532175d002a97f5721ebac384e95a096be49a6fcb1b4bcf229acfb5290582e6b4e41882efdf484359b9469d2c0f927043dcf3ce24d189d275413b2318e211c963836e7ccf5b129a5daa2cf6451715721796268f92299dab9080c999afc6e378ea357a092ea67e4fb120de26a8dad0532081663dd9bada0f5d84d3761d5662f119451d0753290b6629c3ab1bc6307297374c79cc3a6ba94fce62b485daa14377ace889919121abbf8cc786e3281beef59b8dc5600447e924560845c6dee71c289e839345db644e19a31fec26641e7370982654fbf6c540eb2118ad223186ade395f495254e237a9018c729115e348d30a8406392fa4c3427ba329e178099ee2a881e3439866aa325c4dbd42cb17c715592df3bf5254dd8714b6e6a479c4a42b091a09ab1416ed00ddde6dc4c618dbafd9e037f75d93c312fd83a75c5b0b8f2990b7807995ee7e4f8f4d324aaab4b4e0ce76ea33a0a01414a7da91c00ae9926b0974c3a9d4e4a02329e2c31fdf04bc3e4aeeb5bb30b04dfcfd3b0d02b894d7a76dbd63b1ec113a387256b6b7c05f652ae0d59971fa8ef3dc04aed14853b54b355f846f70b802a23662ac7211f6181318ba9a641932bd204c75d54d9f2649d12efc2b2657b3b5113776c272b911e7fdc0ec19270915051e798cf852ee15d97146f76c9c2a4f03eab7ea217b42fe92685b0c5b7e309bdb8a19d1c3e563d339cc8d5c29bffdaff7108310ea20a7d44e406216aaf6008c2826d6f35c7560632ef27fd4949a6128818f90962b09dcd74a61480281b9079248bf9b0b9329b648ac145920be7351df8d67f1c1ae65dcf14a6ddc6ed0aa10ca4aaa43d2920cba0d67ca9933efebba364a206c369387c90f9f8a292a531ac05b89a0924dd5de15af3833278c8b76e4b82434839891a4e0c3b1bbdce43dfa45fe04af628c8608e845e27bfb6217bc6667abb799b7a67d3699c40d6caec1ed689352dd5c3f6e460d0d644fa1bc113af70399a11b5f83b7b82cd34e0437138e04f36056060fc4f9d48f77160f553dea9d3ba5bb8115c7a90e521c03e4bbbe0960d10998e79d1569d9ec13c9e22a94f49743b59782e6493218e491292545397fc0422e8955e395478d964611c94a50df54b7d109c107f21edba24b66fc0139e45ace7d9041a221fe2df541289ba84cd30deac9f1c0277d253f9a917f1edd27f7a2f5a3d0e294eb90dee68f2d165e51144377757c07918fd5d8d2d47c23c626af3d0e14d134231d37018eb4ca934334fe2fd748897d71bb99a42d8be70c08c483d4777c3731063fee00eb53db4c9365b78f347c543eafbfd0b39cf9c24a724c4a5d077cc05f744867871f2c3016e0726bc24c3375063e028e2611caa29a9071cd6aa751969e576c866f4c047bbcc29ac47b152e98c95dc67bba33f4a2f7e5eeafe42b2e82bf30e70ffdc39d5262692a2fc2627340fb930f2660f1002b847c8eae265463020c5733e85861b6c025506b90327553660018564e58749406fde37259f459d64a95b959e033b514925d699e64335eb8347a621d63fdbf5e9d35f7267d6fe974e3c3840de0f879661edc479c24a7990526e0ccb593642c26f143c05452a06b9d4b706306f03807c45351b86188d8bf9da468602cfa0e4bf0fdcd15fd3b917796e494119a72e25041e408ca7b156262de6ef9df6c1cdf4b582f491d3e7681d9dfc027d1bc79de1b6793f63a5e0781a727e8f7f2fb127727a9555b6afb33c64bedc6c3db1c183d5e45f22f250755868fdbd42e2ffb4c492107e060f9bce0c280c490254f66aec19daff0040ea1551790e3c73966ad1da8c1d00a01235793c2143fcf7f69d91c34c441a1e796b786b2bff67e618f0fec152cb0bbf739df708492cc5976c5122aded08ba35c3bce1095991557605c63673250b8f94d1b72fe353cf69fd190ccf650108941c7c9ebbec02580f7ca0db626c58aa28c6415c75c66d6235b0975144329aa3def3c949fa90972755f526282e293836dc1558b9cbb56554fde46895e59ef50748ca51ae90b265b69570b1136da0c73d05fc22fc21e0b0532c003e46f4a026e786e8e9b3181edf656e651b7a6954bb2978b5a1dea9c1595795c0c142afda12cf23d998f692a0a0fd46b377e74c145c94651faf3a8dccc03c60ddb6e1dfc379cfc5473c5b04c143fd50240e4201a4bbb5ff9625159ff5c9351423b82ce353dd5f1e7eb738e19e0f68a460e81f7ff2efe67db325963212d035694d5ce157f381aa76c7d92fd5b85b22b95b73c40cd5dd37282884bebb23bc31cd587476c602bd0a31a62784a3461a97cf233e1b72de8503c0dbd5678121323278d4ffdf60e877c4bc8ddd0a6fad2ba3c23735fc46cb7bdb13bd3afed9303e0bc0a19ac43b697a715ca2af3f0cf190f89ca4164ed5b194eeda983cc9758f49b3f2cdb19f22f537391aca75e5469b7112b138db877d4772960bc2fe2edd2ed8b42c64a58a7df9c1006e943bba5c25bb339e1bc380e38489129bf5396cbfba1a0f3687cd2f0561187ad4e1c76090a3eaa71bfed488afd4790cc4671b23b3226f400fcd4fc5efe35b24e5634c059daa7837c48343794465ce62a4c52e7a75564cebc4d212b9a355e74f0970039aee9b009d884c4d11b5fa140fa07663972c0db4a4350e51eea026a0dc377912aa002431f8b553b35641522fcdba43eba0c0d49a178fc5b0cfdebf129f224a474dc2ad209a2891d5fe90c3a38374301bc402a8d9f13b2e88589a23d43610d76a1bf832d18381c677d1475074fa063e500", 0x2000, &(0x7f0000000e80)={0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, &(0x7f0000000a40)={0x90, 0x0, 0x0, {0x5, 0x0, 0x0, 0x400000000000, 0x0, 0x0, {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x4000}}}, 0x0, 0x0, 0x0, 0x0}) 07:24:15 executing program 2: syz_mount_image$ocfs2(&(0x7f0000000000), &(0x7f0000000100)='./file0\x00', 0x8000003, 0x3b, &(0x7f0000000200)=[{&(0x7f0000010000)="02020202020202027468697320697320616e206f6366733220766f6c756d650002020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202027468697320697320616e206f6366733220766f6c756d6500020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202027468697320697320616e206f6366733220766f6c756d65000202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202027468697320697320616e206f6366733220766f6c756d65000202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202024f434653563200007f1ef014ffffffff00000000002000000000000000000000000000000000000000000000310000000000000000000000751f1f6300000000751f1f63000000000000000000000000020000000000000000000000000000007f1ef01400000000000000000000000000000000000000000000000000000000b83abdfdac0a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005a00000014000000000000000000751f1f6300000000000000000300000058bf00000700000009000000000000000a000000000000000c0000000e000000020000003748825f0400"/8480, 0x2120}, {&(0x7f0000012120)="00000000000000000000000000000000a92c83a1352f432895326cda257351bf00000000000000000000000000000000000000000000000000010000ade51acc7e0cd8aecea1549d00"/96, 0x60, 0x2140}, {&(0x7f0000012180)="47524f5550303100c00f0020710e00007f1ef0140000000000000000000000000f000000000000000400000000000000db7466b36d0c00000000000000000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f00"/640, 0x280, 0x4000}, {&(0x7f0000012400)="47524f5550303100c00f1001f60000007f1ef0140000000000000000000000000c0000000000000008000000000000000cbc8352f80100000000000000000000ffffff0300"/96, 0x60, 0x8000}, {&(0x7f0000012460)="494e4f44453031007f1ef014ffff010000000000000000000000000000000000380f000000000000ed41030011000000751f1f6300000000751f1f6300000000751f1f63000000000000000000000000090000000000000000000000000000007f1ef01400000000000000000000000000000000000001000000000000000000280ff83ca00400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000380f0000000000000900000000000000100001022e0000000900000000000000100002022e2e00003d42000000000000180f0a026c6f73742b666f756e640000", 0x100, 0x9000}, {&(0x7f0000012560)="494e4f44453031007f1ef014ffff020000000000000000000000000000000000380f000000000000ed41040011000000751f1f6300000000751f1f6300000000751f1f630000000000000000000000000a0000000000000000000000000000007f1ef01400000000000000000000000000000000000001000000000000000000e8a6f417ed1600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000380f0000000000000a00000000000000100001022e0000000a00000000000000100002022e2e00000b0000000000000018000a016261645f626c6f636b7300000c0000000000000020001201676c6f62616c5f696e6f64655f616c6c6f6300000d0000000000000014000801736c6f745f6d61700e00000000000000180009016865617274626561740000000f000000000000001c000d01676c6f62616c5f6269746d6170000000100000000000000018000b016171756f74612e7573657200110000000000000018000c016171756f74612e67726f757012000000000000001c000f026f727068616e5f6469723a303030300013000000000000001c000f026f727068616e5f6469723a3030303100140000000000000020001101657874656e745f616c6c6f633a30303030000000150000000000000020001101657874656e745f616c6c6f633a3030303100000016000000000000001c001001696e6f64655f616c6c6f633a3030303017000000000000001c001001696e6f64655f616c6c6f633a30303031180000000000000018000c016a6f75726e616c3a30303030190000000000000018000c016a6f75726e616c3a303030311a000000000000001c0010016c6f63616c5f616c6c6f633a303030301b000000000000001c0010016c6f63616c5f616c6c6f633a303030311c00000000000000200011017472756e636174655f6c6f673a303030300000001d00000000000000200011017472756e636174655f6c6f673a303030310000001e000000000000001c0010016171756f74612e757365723a303030301f000000000000001c0010016171756f74612e757365723a303030312000000000000000200011016171756f74612e67726f75703a303030300000002100000000000000b80c11016171756f74612e67726f75703a3030303100"/896, 0x380, 0xa000}, {&(0x7f00000128e0)="494e4f44453031007f1ef014ffff0300000000000000000000000000000000000000000000000000a481010011000000751f1f6300000000751f1f6300000000751f1f630000000000000000000000000b0000000000000000000000000000007f1ef0140000000000000000000000000000000000000000000000000000000085ed3c1db603000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f300"/224, 0xe0, 0xb000}, {&(0x7f00000129c0)="494e4f44453031007f1ef014ffff0400000000004400000000000000000000000000110000000000a481010091040000751f1f6300000000751f1f6300000000751f1f630000000000000000000000000c0000000000000000000000000000007f1ef01400000000000000000000000000000000000000000000000000000000cccff09f620200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001a0000001001000044000400f30001000000000000000000f6000000100100000800000000000000", 0xe0, 0xc000}, {&(0x7f0000012aa0)="494e4f44453031007f1ef014ffff0500000000000100000000000000000000000040000000000000a481010011000000751f1f6300000000751f1f6300000000761f1f630000000000000000000000000d0000000000000000000000000000007f1ef01400000000000000000000000000000000000000000000000000000000075330279202000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f30001000000000000000000000000000000010000001842000000000000", 0xe0, 0xd000}, {&(0x7f0000012b80)="494e4f44453031007f1ef014ffff0600000000004000000000000000000000000000100000000000a481010011020000751f1f6300000000751f1f6300000000751f1f630000000000000000000000000e0000000000000000000000000000007f1ef014000000000000000000000000000000000000000000000000000000009a7d2e882505000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f30001000000000000000000000000000000400000001801000000000000", 0xe0, 0xe000}, {&(0x7f0000012c60)="494e4f44453031007f1ef014ffff0700000000000020000000000000000000000000000800000000a481010091040000751f1f6300000000751f1f6300000000751f1f630000000000000000000000000f0000000000000000000000000000007f1ef0140000000000000000000000000000000000000000000000000000000025fea9c2220600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008f11000000200000007e0100f30001000000000000000000710e0000002000000400000000000000", 0xe0, 0xf000}, {&(0x7f0000012d40)="494e4f44453031007f1ef014ffff0800000000000200000000000000000000000060000000000000a481010011100000751f1f6300000000751f1f6300000000761f1f63000000000000000000000000100000000000000000000000000000007f1ef014000000000000000000000000000000000000000000000000000000008f1f0d952103000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f30002000000000000000000000000000000010000001c420000000000000100000001000000344200"/256, 0x100, 0x10000}, {&(0x7f0000012e40)="494e4f44453031007f1ef014ffff0900000000000200000000000000000000000060000000000000a481010011100000751f1f6300000000751f1f6300000000761f1f63000000000000000000000000110000000000000000000000000000007f1ef01400000000000000000000000000000000000000000000000000000000f539bcb01c07000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f300020000000000000000000000000000000100000028420000000000000100000001000000384200"/256, 0x100, 0x11000}, {&(0x7f0000012f40)="494e4f44453031007f1ef014ffff0a0000000000000000000000000000000000380f000000000000ed41020011000000751f1f6300000000751f1f6300000000751f1f63000000000000000000000000120000000000000000000000000000007f1ef0140000000000000000000000000000000000000100000000000000000090aa2dc04d0200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000380f0000000000001200000000000000100001022e0000000a00000000000000280f02022e2e00"/256, 0x100, 0x12000}, {&(0x7f0000013040)="494e4f44453031007f1ef014ffff0b0000000000000000000000000000000000380f000000000000ed41020011000000751f1f6300000000751f1f6300000000751f1f63000000000000000000000000130000000000000000000000000000007f1ef014000000000000000000000000000000000000010000000000000000008ba223c5f20600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000380f0000000000001300000000000000100001022e0000000a00000000000000280f02022e2e00"/256, 0x100, 0x13000}, {&(0x7f0000013140)="494e4f44453031007f1ef014ffff0c00000000000000000000000000000000000000000000000000a481010091040000751f1f6300000000751f1f6300000000751f1f63000000000000000000000000140000000000000000000000000000007f1ef014000000000000000000000000000000000000000000000000000000002b6b221d32010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010400f300"/224, 0xe0, 0x14000}, {&(0x7f0000013220)="494e4f44453031007f1ef014ffff0d00000000000000000000000000000000000000000000000000a481010091040000751f1f6300000000751f1f6300000000751f1f63000000000000000000000000150000000000000000000000000000007f1ef014000000000000000000000000000000000000000000000000000000001a2efe98c1030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010400f300"/224, 0xe0, 0x15000}, {&(0x7f0000013300)="494e4f44453031007f1ef014ffff0e00000000000001000000000000000000000000400000000000a481010091040000751f1f6300000000751f1f6300000000751f1f63000000000000000000000000160000000000000000000000000000007f1ef01400000000000000000000000000000000000000000000000000000000304f318b65040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020000000004000000010400f30001000000000000000000fe030000000400003c42000000000000", 0xe0, 0x16000}, {&(0x7f00000133e0)="494e4f44453031007f1ef014ffff0f00000000000000000000000000000000000000000000000000a481010091040000751f1f6300000000751f1f6300000000751f1f63000000000000000000000000170000000000000000000000000000007f1ef0140000000000000000000000000000000000000000000000000000000039a2374834010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010400f300"/224, 0xe0, 0x17000}, {&(0x7f00000134c0)="494e4f44453031007f1ef014ffff1000000000000008000000000000000000000000000200000000a481010011010000751f1f6300000000751f1f6300000000751f1f63000000000000000000000000180000000000000000000000000000007f1ef0140000000000000000000000000000000000000000000000000000000089fc747cf707000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f30001000000000000000000000000000000000800001802000000000000", 0xe0, 0x18000}, {&(0x7f00000135a0)="494e4f44453031007f1ef014ffff1100000000000008000000000000000000000000000200000000a481010011010000751f1f6300000000751f1f6300000000751f1f63000000000000000000000000190000000000000000000000000000007f1ef0140000000000000000000000000000000000000000000000000000000096f2f575dd03000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f30001000000000000000000000000000000000800001822000000000000", 0xe0, 0x19000}, {&(0x7f0000013680)="494e4f44453031007f1ef014ffff1200000000000000000000000000000000000000000000000000a4810100d1000000751f1f6300000000751f1f6300000000751f1f630000000000000000000000001a0000000000000000000000000000007f1ef014000000000000000000000000000000000000000000000000000000000ea913a3b7030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000300f00"/224, 0xe0, 0x1a000}, {&(0x7f0000013760)="494e4f44453031007f1ef014ffff1300000000000000000000000000000000000000000000000000a4810100d1000000751f1f6300000000751f1f6300000000751f1f630000000000000000000000001b0000000000000000000000000000007f1ef014000000000000000000000000000000000000000000000000000000003feccf2644010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000300f00"/224, 0xe0, 0x1b000}, {&(0x7f0000013840)="494e4f44453031007f1ef014ffff1400000000000000000000000000000000000000000000000000a481010011080000751f1f6300000000751f1f6300000000751f1f630000000000000000000000001c0000000000000000000000000000007f1ef01400000000000000000000000000000000000000000000000000000000fe0c1aafcb0400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e70100"/224, 0xe0, 0x1c000}, {&(0x7f0000013920)="494e4f44453031007f1ef014ffff1500000000000000000000000000000000000000000000000000a481010011080000751f1f6300000000751f1f6300000000751f1f630000000000000000000000001d0000000000000000000000000000007f1ef01400000000000000000000000000000000000000000000000000000000cf49c62a380600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e70100"/224, 0xe0, 0x1d000}, {&(0x7f0000013a00)="494e4f44453031007f1ef014ffff1600000000000100000000000000000000000020000000000000a481010011100000751f1f6300000000751f1f6300000000761f1f630000000000000000000000001e0000000000000000000000000000007f1ef01400000000000000000000000000000000000000000000000000000000f4300ba0d007000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f30001000000000000000000000000000000010000002042000000000000", 0xe0, 0x1e000}, {&(0x7f0000013ae0)="494e4f44453031007f1ef014ffff1700000000000100000000000000000000000020000000000000a481010011100000751f1f6300000000751f1f6300000000761f1f630000000000000000000000001f0000000000000000000000000000007f1ef01400000000000000000000000000000000000000000000000000000000f5bce4d3ed03000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f30001000000000000000000000000000000010000002442000000000000", 0xe0, 0x1f000}, {&(0x7f0000013bc0)="494e4f44453031007f1ef014ffff1800000000000100000000000000000000000020000000000000a481010011100000751f1f6300000000751f1f6300000000761f1f63000000000000000000000000200000000000000000000000000000007f1ef014000000000000000000000000000000000000000000000000000000004834299b3905000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f30001000000000000000000000000000000010000002c42000000000000", 0xe0, 0x20000}, {&(0x7f0000013ca0)="494e4f44453031007f1ef014ffff1900000000000100000000000000000000000020000000000000a481010011100000751f1f6300000000751f1f6300000000761f1f63000000000000000000000000210000000000000000000000000000007f1ef014000000000000000000000000000000000000000000000000000000002a04fdb11b01000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f30001000000000000000000000000000000010000003042000000000000", 0xe0, 0x21000}, {&(0x7f0000013d80)="c03b39980000000400000000000010000000200000000001000000010000000100000000000000000000000000000000a92c83a1352f432895326cda257351bf0000000100"/96, 0x60, 0x218000}, {&(0x7f0000013de0)="c03b39980000000400000000000010000000200000000001000000010000000100000000000000000000000000000000a92c83a1352f432895326cda257351bf0000000100"/96, 0x60, 0x2218000}, {&(0x7f0000013e40)="7024f50c00000000803a0900803a090010270000060000000000000005000000380f000000000000ed41030011000000751f1f6300000000751f1f6300000000751f1f63000000000000000000000000090000000000000000000000000000007f1ef01400000000000000000000000000000000000001000000000000000000d394d8b5740300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000380f0000000000000900000000000000100001022e0000000900000000000000280f02022e2e00"/256, 0x100, 0x421c000}, {&(0x7f0000013f40)="0000000000000000000000000000000000000000000000005f608695f80700000200"/64, 0x40, 0x421cfe0}, {&(0x7f0000013f80)="000000000000000000000000000000000000000000000000b6ad528d050000000300"/64, 0x40, 0x421dfe0}, {&(0x7f0000013fc0)="0000000000000000000000000000000000000000000000009a048ad7060000000400"/64, 0x40, 0x421efe0}, {&(0x7f0000014000)="0000000000000000000000000000000000000000000000001f5df08806000000c024f50c0000000001000000010000000200"/64, 0x40, 0x421ffe0}, {&(0x7f0000014040)="00000000000000000000000000000000000000000000000090aefd31bc000000", 0x20, 0x4220fe0}, {&(0x7f0000014060)="000000000000000000000000000000000000000000000000eeffe33800000000", 0x20, 0x4221fe0}, {&(0x7f0000014080)="c024f50c0000000001000000010000000200"/32, 0x20, 0x4224000}, {&(0x7f00000140a0)="00000000000000000000000000000000000000000000000090aefd31bc000000", 0x20, 0x4224fe0}, {&(0x7f00000140c0)="000000000000000000000000000000000000000000000000eeffe33800000000", 0x20, 0x4225fe0}, {&(0x7f00000140e0)="7124f50c00000000803a0900803a0900102700000600000000000000050000000060000000000000a481010011100000751f1f6300000000751f1f6300000000761f1f63000000000000000000000000100000000000000000000000000000007f1ef014000000000000000000000000000000000000000000000000000000008f1f0d952103000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f30002000000000000000000000000000000010000001c420000000000000100000001000000344200"/256, 0x100, 0x4228000}, {&(0x7f00000141e0)="00000000000000000000000000000000000000000000000093abe5e6030700000200"/64, 0x40, 0x4228fe0}, {&(0x7f0000014220)="000000000000000000000000000000000000000000000000b6ad528d050000000300"/64, 0x40, 0x4229fe0}, {&(0x7f0000014260)="0000000000000000000000000000000000000000000000009a048ad7060000000400"/64, 0x40, 0x422afe0}, {&(0x7f00000142a0)="0000000000000000000000000000000000000000000000001f5df08806000000c124f50c0000000001000000010000000200"/64, 0x40, 0x422bfe0}, {&(0x7f00000142e0)="000000000000000000000000000000000000000000000000bc07256bbf000000", 0x20, 0x422cfe0}, {&(0x7f0000014300)="000000000000000000000000000000000000000000000000eeffe33800000000", 0x20, 0x422dfe0}, {&(0x7f0000014320)="c124f50c0000000001000000010000000200"/32, 0x20, 0x4230000}, {&(0x7f0000014340)="000000000000000000000000000000000000000000000000bc07256bbf000000", 0x20, 0x4230fe0}, {&(0x7f0000014360)="000000000000000000000000000000000000000000000000eeffe33800000000", 0x20, 0x4231fe0}, {&(0x7f0000014380)="0500"/32, 0x20, 0x4234000}, {&(0x7f00000143a0)="00000000000000000000000000000000000000000000000033f428d205000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100"/96, 0x60, 0x4234fe0}, {&(0x7f0000014400)="0000000000000000000000000000000000000000000000007375191502010000", 0x20, 0x4235fe0}, {&(0x7f0000014420)="0500"/32, 0x20, 0x4238000}, {&(0x7f0000014440)="00000000000000000000000000000000000000000000000033f428d205000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100"/96, 0x60, 0x4238fe0}, {&(0x7f00000144a0)="0000000000000000000000000000000000000000000000007375191502010000", 0x20, 0x4239fe0}, {&(0x7f00000144c0)="47524f555030310000010004fe0300007f1ef01400000000000000000000000016000000000000003c420000000000006f711d99fb01000000000000000000000300"/96, 0x60, 0x423c000}, {&(0x7f0000014520)="494e4f44453031007f1ef0140000010000000000000000000000000000000000380f000000000000ed41020001000000761f1f6300000000761f1f6300000000761f1f630000000000000000000000003d4200000000000000000000000000007f1ef01400000000000000000000000000000000000001000000000000000000c995d9cc97070000000000000000000000000000000000003c420000000000000000000000000000000000000000000000000000000000000000000000000000380f0000000000003d42000000000000100001022e0000000900000000000000280f02022e2e00"/256, 0x100, 0x423d000}], 0x0, &(0x7f0000014620), 0x1) 07:24:15 executing program 0: io_setup(0xe1, &(0x7f00000001c0)=0x0) r1 = socket$can_j1939(0x1d, 0x2, 0x7) io_submit(r0, 0x1, &(0x7f0000000000)=[&(0x7f0000000040)={0x0, 0x0, 0x0, 0x1, 0x0, r1, 0x0}]) 07:24:15 executing program 5: prlimit64(0x0, 0xe, &(0x7f00000001c0)={0x8, 0x8b}, 0x0) sched_setscheduler(0x0, 0x2, &(0x7f0000000080)=0x6) sched_setaffinity(0x0, 0x8, &(0x7f0000000000)=0x5) r0 = getpid() sched_setscheduler(r0, 0x1, &(0x7f0000000240)=0x1) socketpair$unix(0x1, 0x3, 0x0, &(0x7f0000000200)={0xffffffffffffffff, 0xffffffffffffffff}) connect$unix(r1, &(0x7f000057eff8)=@abs, 0x6e) sendmmsg$unix(r2, &(0x7f00000bd000), 0x318, 0x0) recvmmsg(r1, &(0x7f00000000c0), 0x10106, 0x2, 0x0) r3 = socket$netlink(0x10, 0x3, 0x0) openat$tun(0xffffffffffffff9c, 0x0, 0x0, 0x0) sendmsg$nl_route(r3, &(0x7f0000000240)={0x0, 0x0, &(0x7f0000000040)={&(0x7f0000000280)=ANY=[@ANYBLOB="4000000010001fff000000000049000000000000", @ANYRES32=0x0, @ANYBLOB="81ffffff08000000180012800e0001007769726567756172640000000400028008000a00", @ANYRES32], 0x40}}, 0x0) 07:24:15 executing program 3: syz_mount_image$ntfs(&(0x7f0000000000), &(0x7f0000000100)='./file0\x00', 0x120110, 0x29, &(0x7f0000000200)=[{&(0x7f0000010000)="eb52904e5446532020202000020800000000000000f8000000000000000000000000000080008000ff0f000000000000ff00000000000000ff00000000000000f60000000100000088c3c373e3f92313000000000e1fbe717cac22c0740b56b40ebb0700cd105eebf032e4cd16cd19ebfe54686973206973206e6f742061206220506c6561736520696e73657274206120626f6f7461626c6520666c6f70707920616e640d0a707265737320616e79206b657920746f2074727920616761696e202e2e2e200d0a00"/224, 0xe0}, {&(0x7f0000000180)="00000000000000000000f3ffff6086cf3e9900000000000000000000020f00000055aa", 0x23, 0x1e0}, {&(0x7f0000010100)="ffff0007000000003f00"/32, 0x20, 0x2000}, {&(0x7f0000010120)="46494c4530000300000000000000000001000100380001009801000000040000000000000000000004000000000000000800000000000000100000006000000000001800000000004800000018000000000000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000000000000000000300000006800000000001800000002004a00000018000100050000000000050000ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d8010070000000000000006c0000000000000600000000000000040324004d0046005400000000000000800000004800000001004000000001000000000000000000120000000000000040000000000000000030010000000000001801000000000000180100000000001113040000000000b00000004800000001004000000003000000000000000000000000000000000040000000000000000010000000000000100000000000000010000000000000001101020000000000ffffffff00"/416, 0x1a0, 0x4000}, {&(0x7f00000102c0)='\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\b\x00', 0x20, 0x41e0}, {&(0x7f00000102e0)="000000000000000000000000000000000000000000000000000000000000080046494c453000030000000000000000000100010038000100580100000004000000000000000000000300000001000000020000000000000010000000600000000000180000000000480000001800000000ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d80106000000000000000000000000000000000000000001000000000000000000000000000000000000300000007000000000001800000002005200000018000100050000000000050000ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d801001000000000000000100000000000000600000000000000080324004d00460054004d00690072007200000000000000800000004800000001004000000001000000000000000000000000000000000040000000000000000010000000000000001000000000000000100000000000002101ff0000000000ffffffff00"/384, 0x180, 0x43e0}, {&(0x7f0000010460)="0000000000000000000000000000000000000000000000000000000000000200", 0x20, 0x45e0}, {&(0x7f0000010480)="000000000000000000000000000000000000000000000000000000000000020046494c453000030000000000000000000200010038000100580100000004000000000000000000000300000002000000020000000000000010000000600000000000180000000000480000001800000000ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d80106000000000000000000000000000000000000000001000000000000000000000000000000000000300000007000000000001800000002005200000018000100050000000000050000ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d801000004000000000000000400000000000600000000000000080324004c006f006700460069006c0065000000000000008000000048000000010040000000010000000000000000003f0000000000000040000000000000000000040000000000000004000000000000000400000000002140000100000000ffffffff00"/384, 0x180, 0x47e0}, {&(0x7f0000010600)="0000000000000000000000000000000000000000000000000000000000000200", 0x20, 0x49e0}, {&(0x7f0000010620)="000000000000000000000000000000000000000000000000000000000000020046494c453000030000000000000000000300010038000100e00100000004000000000000000000000600000003000000020000000000000010000000480000000000180000000000300000001800000000ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d80106000000000000000000000000000000300000006800000000001800000001005000000018000100050000000000050000ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d8010000000000000000000000000000000006000000000000000703240056006f006c0075006d00650050000000800000000000180000000200640000001800000001000480480000005400000000000000140000000200340002000000000014009f011200010100000000000512000000000018009f011200010200000000000520000000200200000101000000000005120000000102000000000005200000002002000000000000600000003000000000001800000004001200000018000000730079007a006b0061006c006c0065007200000000000000700000002800000000001800000005000c0000001800000000000000000000000301000000000000800000001800000000001800000003000000000018000000ffffffff000000000000000000000000000000000000000000000000000000000000000000000200", 0x220, 0x4be0}, {&(0x7f00000007c0)="000000000000000000000000000000000000000000000000000000000000020046494c453000030000000000000000000400010038000100c00100000004000000000000000000000400000004000000020000000000000010000000480000000000180000000000300000001800000000ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d80106000000000000000000000000000000300000007000000000001800000002005200000018000100050000000000050000ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d8010010000000000000000a00000000000006000000000000000803240041007400740072004400650066000000000000005000000080000000000018000000030064000000180000000100048048000000540000000000000014000000020034000200000000001400890012000101000000000005120000000000180089001200010200000000000520000000200200000101000000000005120000000102000000000005200000002002000000000000800000004800000001004000000001000000000000000000000000000000000040000000000000000010000000000000000a000000000000000a0000000000001101460000000000ffffffff00000000", 0x1e0, 0x4fe0}, {&(0x7f0000010a20)="0000000000000000000000000000000000000000000000000000000000000200", 0x20, 0x51e0}, {&(0x7f0000010a40)="000000000000000000000000000000000000000000000000000000000000020046494c453000030000000000000000000500010038000300000200000004000000000000000000000600000005000000070000000000000010000000480000000000180000000000300000001800000000ab884a9fc6d80137340d4b9fc6d80137340d4b9fc6d80100ab884a9fc6d80126000000000000000000000000000000300000006000000000001800000001004400000018000100050000000000050000ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d80100000000000000000000000000000000060000100000000001032e00000000005000000048000000010040000000020000000000000000000100000000000000400000000000000000200000000000002c100000000000002c10000000000000110243000000000090000000580000000004180000000300380000002000000024004900330030003000000001000000001000000100000010000000280000002800000001000000000000000000000018000000030000000000000000000000a000000050000000010440000000050000000000000000000000000000000000480000000000000000100000000000000010000000000000001000000000000024004900330030001101450000000000b0000000280000000004180000000400080000002000000024004900330030000100000000000000ffffffff00000700", 0x220, 0x53e0}, {&(0x7f0000010c60)="000000000000000000000000000000000000000000000000000000000000070046494c453000030000000000000000000600010038000100500100000004000000000000000000000300000006000000020000000000000010000000600000000000180000000000480000001800000000ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d80106000000000000000000000000000000000000000001000000000000000000000000000000000000300000006800000000001800000002005000000018000100050000000000050000ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d801001000000000000040000000000000000600000000000000070324004200690074006d0061007000800000004800000001004000000001000000000000000000000000000000000040000000000000000010000000000000400000000000000040000000000000001101470000000000ffffffff00"/384, 0x180, 0x57e0}, {&(0x7f0000010de0)="0000000000000000000000000000000000000000000000000000000000000200", 0x20, 0x59e0}, {&(0x7f0000010e00)="000000000000000000000000000000000000000000000000000000000000020046494c453000030000000000000000000700010038000100b80100000004000000000000000000000400000007000000020000000000000010000000480000000000180000000000300000001800000000ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d80106000000000000000000000000000000300000006800000000001800000002004c00000018000100050000000000050000ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d8010020000000000000002000000000000006000000000000000503240042006f006f007400000000005000000080000000000018000000030064000000180000000100048048000000540000000000000014000000020034000200000000001400890012000101000000000005120000000000180089001200010200000000000520000000200200000101000000000005120000000102000000000005200000002002000000000000800000004800000001004000000001000000000000000000010000000000000040000000000000000020000000000000002000000000000000200000000000001102000000000000ffffffff00"/480, 0x1e0, 0x5be0}, {&(0x7f0000010fe0)="0000000000000000000000000000000000000000000000000000000000000200", 0x20, 0x5de0}, {&(0x7f0000011000)="000000000000000000000000000000000000000000000000000000000000020046494c453000030000000000000000000800010038000100780100000004000000000000000000000400000008000000020000000000000010000000600000000000180000000000480000001800000000ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d80106000000000000000000000000000000000000000001000000000000000000000000000000000000300000007000000000001800000003005200000018000100050000000000050000ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d8010000000000000000000000000000000006000000000000000803240042006100640043006c0075007300ffff00000000800000001800000000001800000002000000000018000000800000005000000001044000000001000000000000000000fe01000000000000480000000000000000f01f000000000000f01f00000000000000000000000000240042006100640002ff010000000000ffffffff00"/416, 0x1a0, 0x5fe0}, {&(0x7f0000000140)="0000000000000000000000000000000000000000000000000000000000000200", 0x20, 0x61e0}, {&(0x7f00000111c0)="000000000000000000000000000000000000000000000000000000000000020046494c453000030000000000000000000900010038000900a80200000004000000000000000000000500000009000000020000000000000010000000600000000000180000000000480000001800000000ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d80106000020000000000000000000000000000000000101000000000000000000000000000000000000300000006800000000001800000001005000000018000100050000000000050000ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d80100000000000000000000000000000000060000200000000007032400530065006300750072006500800000005000000001044000000002000000000000000000400000000000000048000000000000000010040000000000fc00040000000000fc000400000000002400530044005300114148000000000090000000b00000000004180000000300900000002000000024005300440048000000000012000000001000000100000010000000800000008000000000000000180014000000000030000800000000005124b300010100005124b3000101000080000000000000007c0000004900490018001400000000003000080000000000f01203f800010000f01203f80001000000000000000000007c000000490049000000000000000000100000000200020090000000a000000000041800000004008000000020000000240053004900490000000000100000000010000001000000100000007000000070000000000000001400140000000000280004000000000000010000f01203f80001000000000000000000007c00000014001400000000002800040000000000010100005124b3000101000080000000000000007c00000000000000000000001000000002000000ffffffff00"/736, 0x2e0, 0x63e0}, {&(0x7f00000114a0)="000000000000000000000000000000000000000000000000000000000000020046494c453000030000000000000000000a0001003800010098010000000400000000000000000000040000000a000000020000000000000010000000600000000000180000000000480000001800000000ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d80106000000000000000000000000000000000000000001000000000000000000000000000000000000300000006800000000001800000003005000000018000100050000000000050000ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d801000002000000000000000200000000000600000000000000070324005500700043006100730065008000000048000000010040000000010000000000000000001f0000000000000040000000000000000000020000000000000002000000000000000200000000002120890000000000800000004800000000051800000002002000000028000000240049006e0066006f0000000000000020000000000000000c691b6b777edcda00000000000000000000000000000000ffffffff00"/448, 0x1c0, 0x67e0}, {&(0x7f0000011660)="0000000000000000000000000000000000000000000000000000000000000200", 0x20, 0x69e0}, {&(0x7f0000011680)="000000000000000000000000000000000000000000000000000000000000020046494c453000030000000000000000000b0001003800030080020000000400000000000000000000030000000b000000020000000000000010000000600000000000180000000000480000001800000000ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d80106000000000000000000000000000000000000000101000000000000000000000000000000000000300000006800000000001800000001005000000018000100050000000000050000ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d8010000000000000000000000000000000006000010000000000703240045007800740065006e00640090000000780100000004180000000200580100002000000024004900330030003000000001000000001000000100000010000000480100004801000000000000190000000000010060004e00000000000b00000000000b0000ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d801000000000000000000000000000000002600002000000000060324004f0062006a00490064000000180000000000010060004e00000000000b00000000000b0000ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d80100000000000000000000000000000000260000200000000006032400510075006f007400610002001a0000000000010068005200000000000b00000000000b0000ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d80100000000000000000000000000000000260000200000000008032400520065007000610072007300650000000000000000000000000000001000000002000000ffffffff00000000", 0x2a0, 0x6be0}, {&(0x7f0000011920)="00000000000000000000000000000000000000000000000000000000000002", 0x1f, 0x6fe0}, {&(0x7f00000125a0)="000000000000000000000000000000000000000000000000000000000000020046494c453000030000000000000000000100010038000d00700200000004000000000000000000000400000018000000020000000000000010000000600000000000180000000000480000001800000000ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d80126000020000000000000000000000000000000000101000000000000000000000000000000000000300000006800000000001800000001004e000000180001000b00000000000b0000ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d80100000000000000000000000000000000260000200000000006032400510075006f0074006100000090000000780000000002180000000300580000002000000024004f00000000000000000011000000001000000100000010000000480000004800000000000000200004000000000028001000000000000102000000000005200000002002000000010000200000000000000000000000100000000200000090000000f00000000002180000000200d00000002000000024005100000000000000000010000000001000000100000010000000c0000000c00000000000000014003000000000004800040000000000010000000200000001000000000000000000000000ab884a9fc6d801ffffffffffffffffffffffffffffffff0000000000000000000002", 0x21f, 0x9fe0}, {&(0x7f0000000040)="00000000000000000000000000000000000000000000000000000000000002d461243e4b5356d5588ac71a90c69ea277e92d7d4bd55d84f6088a0b5c7a359e7842582261c4c83c453068cd3967ec468544b663a0cccc9e2bab17f5ece04715951cf712de060d49efe6dd7a25aac9837eec3b63e1f9157501a732efb55bcdc7c012abc83d101d63f786302054a414df5099823abf9d8b7e9279cf40480f014bd4f8ca3bfda8780f05dbddd672874f91fafd85e1fb81017ecd1f", 0xb9, 0xa3e0}, {&(0x7f0000014c80)="494e4458280009000000000000000000000000000000000028000000b8060000e80f0000000000001800d801000000000000000000000000000000000000000004000000000004006800520000000000050000000000050000ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d8010010000000000000000a000000000000060000000000000008032400410074007400720044006500660000000000010008000000000008006800520000000000050000000000050000ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d8010000000000000000000000000000000006000000000000000803240042006100640043006c007500730000000000070006000000000006006000500000000000050000000000050000ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d801001000000000000040000000000000000600000000000000070324004200690074006d0061007000070000000000070060004c0000000000050000000000050000ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d8010020000000000000002000000000000006000000000000000503240042006f006f00740069006c000b00000000000b006000500000000000050000000000050000ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6180000ab884a9fc6d8010000000000000000000000000000000006000010000000000703240045007800740065006e00640002000000000002006800520000000000050000000000050000ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d801000004000000000000000400000000000600000000000000080324004c006f006700460069006c006500000000000100000000000000010060004a0000000000050000000000050000ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d8010070000000000000006c0000000000000600000000000000040324004d004600540000000000000001000000000001006800520000000000050000000000050000ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d801001000000000000000100000000000000600000000000000080324004d00460054004d0069007200720000000200000009000000000009006000500000000000050000000000050000ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d801000000000000000000000000000000000600002000000000070324005300650063007500720065000a00000000000a006000500000000000050000000000050000ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d8010000020000001800000002000000000006000000000000000703240055007000430061007300650003000000000003006000500000000000050000000000050000ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d8010000000000000000000000000000000006000000000000000703240056006f006c0075006d00650005000000000005005800440000000000050000000000050000ab884a9fc6d80137340d4b9fc6d80137340d4b9fc6d80100ab884a9fc6d80100000000000000000000000000000000260000100000000001032e0000000000450000000000010068005400000000000500000000000500e3330d4b9fc6d801d0370d4b9fc6d801d0370d4b9fc6d801e3330d4b9fc6d8016800000000000000640000000000000020000000000000000900660069006c0065002e0063006f006c00640000000000400000000000010060004c00000000000500000000000500abea0c4b9fc6d80107040d4b9fc6d80107040d4b9fc6d801abea0c4b9fc6d8010000000000000000000000000000000020000010000000000500660069006c006500300000000000430000000000010060004c00000000000500000000000500170a0d4b9fc6d801d70f0d4b9fc6d80141180d4b9fc6d801170a0d4b9fc6d80110000000000000000a0000000000000020000000000000000500660069006c0065003100000018", 0x5ff, 0x45000}, {&(0x7f0000015360)="0000000000000000000000000000000000000000000000000000000000001800", 0x20, 0x457dc}, {&(0x7f0000015380)="00000000000000000000000000000000000000000000000000000000000018", 0x1f, 0x459e0}, {&(0x7f00000153a0)="00000000000000000000000000000000000000000000000000000000000018", 0x1f, 0x45be0}, {&(0x7f00000153c0)="00000000000000000000000000000000000000000000000000000000000018", 0x1f, 0x45de0}, {&(0x7f00000153e0)="0000000000000000000000000000000000000000000000000000000000001800", 0x20, 0x45fe0}, {&(0x7f0000015aa0)="00000100020003000400050006000700080009000a000b000c000d000e000f0010001100120013001400150016001700180019001a001b001c001d001e001f0020002100220023002400250026002700280029002a002b002c002d002e002f0030003100320033003400350036003700380039003a003b003c003d003e003f0040004100420043004400450046004700480049004a004b004c004d004e004f00500051", 0xa3, 0x89000}, {&(0x7f0000035aa0)="46494c4530000300000000000000000001000100380001009801000000040000000000000000000004000000000000000800000000000000100000006000000000001800000000004800000018000000000000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000000000000000000300000006800000000001800000002004a00000018000100050000000000050000ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d8010070000000000000006c0000000000000600000000000000040324004d0046005400000000000000800000004800000001004000000001000000000000000000120000000000000040000000000000000030010000000000001801000000000000180100000000001113040000000000b00000004800000001004000000003000000000000000000000000000000000040000000000000000010000000000000100000000000000010000000000000001101020000000000ffffffff", 0x194, 0xff000}, {&(0x7f0000035c40)='\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\b', 0x1f, 0xff1e0}, {&(0x7f0000035c60)="000000000000000000000000000000000000000000000000000000000000080046494c453000030000000000000000000100010038000100580100000004000000000000000000000300000001000000020000000000000010000000600000000000180000000000480000001800000000ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d80106000000000000000000000000000000000000000001000000000000000000000000000000000000300000007000000000001800000002005200000018000100050000000000050000ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d801001000000000000000100000000000000600000000000000080324004d00460054004d00690072007200000000000000800000004800000001004000000001000000000000000000000000000000000040000000000000000010000000000000001000000000000000100000000000002101ff0000000000ffffffff", 0x174, 0xff3e0}, {&(0x7f0000035de0)="00000000000000000000000000000000000000000000000000000000000002", 0x1f, 0xff5e0}, {&(0x7f0000035e00)="000000000000000000000000000000000000000000000000000000000000020046494c453000030000000000000000000200010038000100580100000004000000000000000000000300000002000000020000000000000010000000600000000000180000000000480000001800000000ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d80106000000000000000000000000000000000000000001000000000000000000000000000000000000300000007000000000001800000002005200000018000100050000000000050000ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d801000004000000000000000400000000000600000000000000080324004c006f006700460069006c0065000000000000008000000048000000010040000000010000000000000000003f0000000000000040000000000000000000040000000000000004000000000000000400000000002140000100000000ffffffff", 0x174, 0xff7e0}, {&(0x7f0000035f80)="00000000000000000000000000001a00000200"/31, 0x1f, 0xff9e0}, {&(0x7f0000035fa0)="000000000000000000000000000000000000000000000000000000000000020046494c453000030000000000000000000300010038000100e00100000004000000000000000000000600000003000000020000000000000010000000480000000000180000000000300000001800000000ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d80106000000000000000000000000000000300000006800000000001800000001005000000018000100050000000000050000ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d80100ab884a9fc6d8010000000000000000000000000000000006000000000000000703240056006f006c0075006d00650050000000800000000000180000000200640000001800000001000480480000005400000000000000140000000200340002000000000014009f011200010100000000000512000000000018009f011200010200000000000520000000200200000101000000000005120000000102000000000005200000002002000000000000600000003000000000001800000004001200000018000000730079007a006b0061006c006c0065007200000000000000700000002800000000001800000005000c0000001800000000000000000000000301000000000000800000001800000000001800000003000000000018000000ffffffff0000000000000000000000000000000000000000000000000000000000000000000002", 0x21f, 0xffbe0}, {&(0x7f00000361c0)="0000000000000000000000000000000000000000000000000000000000000200ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff", 0x20024, 0xfffe0}], 0x0, &(0x7f0000076700), 0x1) [ 1927.108890][ T3009] loop2: detected capacity change from 0 to 262144 [ 1927.126566][ T3013] loop3: detected capacity change from 0 to 2304 [ 1927.137633][ T3009] (syz-executor.2,3009,0):ocfs2_parse_options:1455 ERROR: Invalid heartbeat mount options [ 1927.142008][ T3013] __ntfs_warning: 11 callbacks suppressed [ 1927.142026][ T3013] ntfs: (device loop3): is_boot_sector_ntfs(): Invalid end of sector marker. [ 1927.151515][ T3009] (syz-executor.2,3009,0):ocfs2_fill_super:1173 ERROR: status = -22 [ 1927.162074][ T3013] ntfs: (device loop3): check_mft_mirror(): Incomplete multi sector transfer detected in mft mirror record 2. [ 1927.182874][ T3013] ntfs: (device loop3): load_system_files(): $MFTMirr does not match $MFT. Mounting read-only. Run ntfsfix and/or chkdsk. 07:24:15 executing program 0: io_setup(0xe1, &(0x7f00000001c0)=0x0) r1 = socket$can_j1939(0x1d, 0x2, 0x7) io_submit(r0, 0x1, &(0x7f0000000000)=[&(0x7f0000000040)={0x0, 0x0, 0x0, 0x1, 0x0, r1, 0x0}]) 07:24:16 executing program 2: syz_mount_image$ocfs2(&(0x7f0000000000), &(0x7f0000000100)='./file0\x00', 0x8000004, 0x3b, &(0x7f0000000200)=[{&(0x7f0000010000)="02020202020202027468697320697320616e206f6366733220766f6c756d650002020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202027468697320697320616e206f6366733220766f6c756d6500020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202027468697320697320616e206f6366733220766f6c756d65000202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202027468697320697320616e206f6366733220766f6c756d65000202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202024f434653563200007f1ef014ffffffff00000000002000000000000000000000000000000000000000000000310000000000000000000000751f1f6300000000751f1f63000000000000000000000000020000000000000000000000000000007f1ef01400000000000000000000000000000000000000000000000000000000b83abdfdac0a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005a00000014000000000000000000751f1f6300000000000000000300000058bf00000700000009000000000000000a000000000000000c0000000e000000020000003748825f0400"/8480, 0x2120}, {&(0x7f0000012120)="00000000000000000000000000000000a92c83a1352f432895326cda257351bf00000000000000000000000000000000000000000000000000010000ade51acc7e0cd8aecea1549d00"/96, 0x60, 0x2140}, {&(0x7f0000012180)="47524f5550303100c00f0020710e00007f1ef0140000000000000000000000000f000000000000000400000000000000db7466b36d0c00000000000000000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f00"/640, 0x280, 0x4000}, {&(0x7f0000012400)="47524f5550303100c00f1001f60000007f1ef0140000000000000000000000000c0000000000000008000000000000000cbc8352f80100000000000000000000ffffff0300"/96, 0x60, 0x8000}, {&(0x7f0000012460)="494e4f44453031007f1ef014ffff010000000000000000000000000000000000380f000000000000ed41030011000000751f1f6300000000751f1f6300000000751f1f63000000000000000000000000090000000000000000000000000000007f1ef01400000000000000000000000000000000000001000000000000000000280ff83ca00400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000380f0000000000000900000000000000100001022e0000000900000000000000100002022e2e00003d42000000000000180f0a026c6f73742b666f756e640000", 0x100, 0x9000}, {&(0x7f0000012560)="494e4f44453031007f1ef014ffff020000000000000000000000000000000000380f000000000000ed41040011000000751f1f6300000000751f1f6300000000751f1f630000000000000000000000000a0000000000000000000000000000007f1ef01400000000000000000000000000000000000001000000000000000000e8a6f417ed1600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000380f0000000000000a00000000000000100001022e0000000a00000000000000100002022e2e00000b0000000000000018000a016261645f626c6f636b7300000c0000000000000020001201676c6f62616c5f696e6f64655f616c6c6f6300000d0000000000000014000801736c6f745f6d61700e00000000000000180009016865617274626561740000000f000000000000001c000d01676c6f62616c5f6269746d6170000000100000000000000018000b016171756f74612e7573657200110000000000000018000c016171756f74612e67726f757012000000000000001c000f026f727068616e5f6469723a303030300013000000000000001c000f026f727068616e5f6469723a3030303100140000000000000020001101657874656e745f616c6c6f633a30303030000000150000000000000020001101657874656e745f616c6c6f633a3030303100000016000000000000001c001001696e6f64655f616c6c6f633a3030303017000000000000001c001001696e6f64655f616c6c6f633a30303031180000000000000018000c016a6f75726e616c3a30303030190000000000000018000c016a6f75726e616c3a303030311a000000000000001c0010016c6f63616c5f616c6c6f633a303030301b000000000000001c0010016c6f63616c5f616c6c6f633a303030311c00000000000000200011017472756e636174655f6c6f673a303030300000001d00000000000000200011017472756e636174655f6c6f673a303030310000001e000000000000001c0010016171756f74612e757365723a303030301f000000000000001c0010016171756f74612e757365723a303030312000000000000000200011016171756f74612e67726f75703a303030300000002100000000000000b80c11016171756f74612e67726f75703a3030303100"/896, 0x380, 0xa000}, {&(0x7f00000128e0)="494e4f44453031007f1ef014ffff0300000000000000000000000000000000000000000000000000a481010011000000751f1f6300000000751f1f6300000000751f1f630000000000000000000000000b0000000000000000000000000000007f1ef0140000000000000000000000000000000000000000000000000000000085ed3c1db603000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f300"/224, 0xe0, 0xb000}, {&(0x7f00000129c0)="494e4f44453031007f1ef014ffff0400000000004400000000000000000000000000110000000000a481010091040000751f1f6300000000751f1f6300000000751f1f630000000000000000000000000c0000000000000000000000000000007f1ef01400000000000000000000000000000000000000000000000000000000cccff09f620200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001a0000001001000044000400f30001000000000000000000f6000000100100000800000000000000", 0xe0, 0xc000}, {&(0x7f0000012aa0)="494e4f44453031007f1ef014ffff0500000000000100000000000000000000000040000000000000a481010011000000751f1f6300000000751f1f6300000000761f1f630000000000000000000000000d0000000000000000000000000000007f1ef01400000000000000000000000000000000000000000000000000000000075330279202000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f30001000000000000000000000000000000010000001842000000000000", 0xe0, 0xd000}, {&(0x7f0000012b80)="494e4f44453031007f1ef014ffff0600000000004000000000000000000000000000100000000000a481010011020000751f1f6300000000751f1f6300000000751f1f630000000000000000000000000e0000000000000000000000000000007f1ef014000000000000000000000000000000000000000000000000000000009a7d2e882505000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f30001000000000000000000000000000000400000001801000000000000", 0xe0, 0xe000}, {&(0x7f0000012c60)="494e4f44453031007f1ef014ffff0700000000000020000000000000000000000000000800000000a481010091040000751f1f6300000000751f1f6300000000751f1f630000000000000000000000000f0000000000000000000000000000007f1ef0140000000000000000000000000000000000000000000000000000000025fea9c2220600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008f11000000200000007e0100f30001000000000000000000710e0000002000000400000000000000", 0xe0, 0xf000}, {&(0x7f0000012d40)="494e4f44453031007f1ef014ffff0800000000000200000000000000000000000060000000000000a481010011100000751f1f6300000000751f1f6300000000761f1f63000000000000000000000000100000000000000000000000000000007f1ef014000000000000000000000000000000000000000000000000000000008f1f0d952103000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f30002000000000000000000000000000000010000001c420000000000000100000001000000344200"/256, 0x100, 0x10000}, {&(0x7f0000012e40)="494e4f44453031007f1ef014ffff0900000000000200000000000000000000000060000000000000a481010011100000751f1f6300000000751f1f6300000000761f1f63000000000000000000000000110000000000000000000000000000007f1ef01400000000000000000000000000000000000000000000000000000000f539bcb01c07000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f300020000000000000000000000000000000100000028420000000000000100000001000000384200"/256, 0x100, 0x11000}, {&(0x7f0000012f40)="494e4f44453031007f1ef014ffff0a0000000000000000000000000000000000380f000000000000ed41020011000000751f1f6300000000751f1f6300000000751f1f63000000000000000000000000120000000000000000000000000000007f1ef0140000000000000000000000000000000000000100000000000000000090aa2dc04d0200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000380f0000000000001200000000000000100001022e0000000a00000000000000280f02022e2e00"/256, 0x100, 0x12000}, {&(0x7f0000013040)="494e4f44453031007f1ef014ffff0b0000000000000000000000000000000000380f000000000000ed41020011000000751f1f6300000000751f1f6300000000751f1f63000000000000000000000000130000000000000000000000000000007f1ef014000000000000000000000000000000000000010000000000000000008ba223c5f20600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000380f0000000000001300000000000000100001022e0000000a00000000000000280f02022e2e00"/256, 0x100, 0x13000}, {&(0x7f0000013140)="494e4f44453031007f1ef014ffff0c00000000000000000000000000000000000000000000000000a481010091040000751f1f6300000000751f1f6300000000751f1f63000000000000000000000000140000000000000000000000000000007f1ef014000000000000000000000000000000000000000000000000000000002b6b221d32010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010400f300"/224, 0xe0, 0x14000}, {&(0x7f0000013220)="494e4f44453031007f1ef014ffff0d00000000000000000000000000000000000000000000000000a481010091040000751f1f6300000000751f1f6300000000751f1f63000000000000000000000000150000000000000000000000000000007f1ef014000000000000000000000000000000000000000000000000000000001a2efe98c1030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010400f300"/224, 0xe0, 0x15000}, {&(0x7f0000013300)="494e4f44453031007f1ef014ffff0e00000000000001000000000000000000000000400000000000a481010091040000751f1f6300000000751f1f6300000000751f1f63000000000000000000000000160000000000000000000000000000007f1ef01400000000000000000000000000000000000000000000000000000000304f318b65040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020000000004000000010400f30001000000000000000000fe030000000400003c42000000000000", 0xe0, 0x16000}, {&(0x7f00000133e0)="494e4f44453031007f1ef014ffff0f00000000000000000000000000000000000000000000000000a481010091040000751f1f6300000000751f1f6300000000751f1f63000000000000000000000000170000000000000000000000000000007f1ef0140000000000000000000000000000000000000000000000000000000039a2374834010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010400f300"/224, 0xe0, 0x17000}, {&(0x7f00000134c0)="494e4f44453031007f1ef014ffff1000000000000008000000000000000000000000000200000000a481010011010000751f1f6300000000751f1f6300000000751f1f63000000000000000000000000180000000000000000000000000000007f1ef0140000000000000000000000000000000000000000000000000000000089fc747cf707000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f30001000000000000000000000000000000000800001802000000000000", 0xe0, 0x18000}, {&(0x7f00000135a0)="494e4f44453031007f1ef014ffff1100000000000008000000000000000000000000000200000000a481010011010000751f1f6300000000751f1f6300000000751f1f63000000000000000000000000190000000000000000000000000000007f1ef0140000000000000000000000000000000000000000000000000000000096f2f575dd03000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f30001000000000000000000000000000000000800001822000000000000", 0xe0, 0x19000}, {&(0x7f0000013680)="494e4f44453031007f1ef014ffff1200000000000000000000000000000000000000000000000000a4810100d1000000751f1f6300000000751f1f6300000000751f1f630000000000000000000000001a0000000000000000000000000000007f1ef014000000000000000000000000000000000000000000000000000000000ea913a3b7030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000300f00"/224, 0xe0, 0x1a000}, {&(0x7f0000013760)="494e4f44453031007f1ef014ffff1300000000000000000000000000000000000000000000000000a4810100d1000000751f1f6300000000751f1f6300000000751f1f630000000000000000000000001b0000000000000000000000000000007f1ef014000000000000000000000000000000000000000000000000000000003feccf2644010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000300f00"/224, 0xe0, 0x1b000}, {&(0x7f0000013840)="494e4f44453031007f1ef014ffff1400000000000000000000000000000000000000000000000000a481010011080000751f1f6300000000751f1f6300000000751f1f630000000000000000000000001c0000000000000000000000000000007f1ef01400000000000000000000000000000000000000000000000000000000fe0c1aafcb0400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e70100"/224, 0xe0, 0x1c000}, {&(0x7f0000013920)="494e4f44453031007f1ef014ffff1500000000000000000000000000000000000000000000000000a481010011080000751f1f6300000000751f1f6300000000751f1f630000000000000000000000001d0000000000000000000000000000007f1ef01400000000000000000000000000000000000000000000000000000000cf49c62a380600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e70100"/224, 0xe0, 0x1d000}, {&(0x7f0000013a00)="494e4f44453031007f1ef014ffff1600000000000100000000000000000000000020000000000000a481010011100000751f1f6300000000751f1f6300000000761f1f630000000000000000000000001e0000000000000000000000000000007f1ef01400000000000000000000000000000000000000000000000000000000f4300ba0d007000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f30001000000000000000000000000000000010000002042000000000000", 0xe0, 0x1e000}, {&(0x7f0000013ae0)="494e4f44453031007f1ef014ffff1700000000000100000000000000000000000020000000000000a481010011100000751f1f6300000000751f1f6300000000761f1f630000000000000000000000001f0000000000000000000000000000007f1ef01400000000000000000000000000000000000000000000000000000000f5bce4d3ed03000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f30001000000000000000000000000000000010000002442000000000000", 0xe0, 0x1f000}, {&(0x7f0000013bc0)="494e4f44453031007f1ef014ffff1800000000000100000000000000000000000020000000000000a481010011100000751f1f6300000000751f1f6300000000761f1f63000000000000000000000000200000000000000000000000000000007f1ef014000000000000000000000000000000000000000000000000000000004834299b3905000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f30001000000000000000000000000000000010000002c42000000000000", 0xe0, 0x20000}, {&(0x7f0000013ca0)="494e4f44453031007f1ef014ffff1900000000000100000000000000000000000020000000000000a481010011100000751f1f6300000000751f1f6300000000761f1f63000000000000000000000000210000000000000000000000000000007f1ef014000000000000000000000000000000000000000000000000000000002a04fdb11b01000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f30001000000000000000000000000000000010000003042000000000000", 0xe0, 0x21000}, {&(0x7f0000013d80)="c03b39980000000400000000000010000000200000000001000000010000000100000000000000000000000000000000a92c83a1352f432895326cda257351bf0000000100"/96, 0x60, 0x218000}, {&(0x7f0000013de0)="c03b39980000000400000000000010000000200000000001000000010000000100000000000000000000000000000000a92c83a1352f432895326cda257351bf0000000100"/96, 0x60, 0x2218000}, {&(0x7f0000013e40)="7024f50c00000000803a0900803a090010270000060000000000000005000000380f000000000000ed41030011000000751f1f6300000000751f1f6300000000751f1f63000000000000000000000000090000000000000000000000000000007f1ef01400000000000000000000000000000000000001000000000000000000d394d8b5740300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000380f0000000000000900000000000000100001022e0000000900000000000000280f02022e2e00"/256, 0x100, 0x421c000}, {&(0x7f0000013f40)="0000000000000000000000000000000000000000000000005f608695f80700000200"/64, 0x40, 0x421cfe0}, {&(0x7f0000013f80)="000000000000000000000000000000000000000000000000b6ad528d050000000300"/64, 0x40, 0x421dfe0}, {&(0x7f0000013fc0)="0000000000000000000000000000000000000000000000009a048ad7060000000400"/64, 0x40, 0x421efe0}, {&(0x7f0000014000)="0000000000000000000000000000000000000000000000001f5df08806000000c024f50c0000000001000000010000000200"/64, 0x40, 0x421ffe0}, {&(0x7f0000014040)="00000000000000000000000000000000000000000000000090aefd31bc000000", 0x20, 0x4220fe0}, {&(0x7f0000014060)="000000000000000000000000000000000000000000000000eeffe33800000000", 0x20, 0x4221fe0}, {&(0x7f0000014080)="c024f50c0000000001000000010000000200"/32, 0x20, 0x4224000}, {&(0x7f00000140a0)="00000000000000000000000000000000000000000000000090aefd31bc000000", 0x20, 0x4224fe0}, {&(0x7f00000140c0)="000000000000000000000000000000000000000000000000eeffe33800000000", 0x20, 0x4225fe0}, {&(0x7f00000140e0)="7124f50c00000000803a0900803a0900102700000600000000000000050000000060000000000000a481010011100000751f1f6300000000751f1f6300000000761f1f63000000000000000000000000100000000000000000000000000000007f1ef014000000000000000000000000000000000000000000000000000000008f1f0d952103000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f30002000000000000000000000000000000010000001c420000000000000100000001000000344200"/256, 0x100, 0x4228000}, {&(0x7f00000141e0)="00000000000000000000000000000000000000000000000093abe5e6030700000200"/64, 0x40, 0x4228fe0}, {&(0x7f0000014220)="000000000000000000000000000000000000000000000000b6ad528d050000000300"/64, 0x40, 0x4229fe0}, {&(0x7f0000014260)="0000000000000000000000000000000000000000000000009a048ad7060000000400"/64, 0x40, 0x422afe0}, {&(0x7f00000142a0)="0000000000000000000000000000000000000000000000001f5df08806000000c124f50c0000000001000000010000000200"/64, 0x40, 0x422bfe0}, {&(0x7f00000142e0)="000000000000000000000000000000000000000000000000bc07256bbf000000", 0x20, 0x422cfe0}, {&(0x7f0000014300)="000000000000000000000000000000000000000000000000eeffe33800000000", 0x20, 0x422dfe0}, {&(0x7f0000014320)="c124f50c0000000001000000010000000200"/32, 0x20, 0x4230000}, {&(0x7f0000014340)="000000000000000000000000000000000000000000000000bc07256bbf000000", 0x20, 0x4230fe0}, {&(0x7f0000014360)="000000000000000000000000000000000000000000000000eeffe33800000000", 0x20, 0x4231fe0}, {&(0x7f0000014380)="0500"/32, 0x20, 0x4234000}, {&(0x7f00000143a0)="00000000000000000000000000000000000000000000000033f428d205000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100"/96, 0x60, 0x4234fe0}, {&(0x7f0000014400)="0000000000000000000000000000000000000000000000007375191502010000", 0x20, 0x4235fe0}, {&(0x7f0000014420)="0500"/32, 0x20, 0x4238000}, {&(0x7f0000014440)="00000000000000000000000000000000000000000000000033f428d205000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100"/96, 0x60, 0x4238fe0}, {&(0x7f00000144a0)="0000000000000000000000000000000000000000000000007375191502010000", 0x20, 0x4239fe0}, {&(0x7f00000144c0)="47524f555030310000010004fe0300007f1ef01400000000000000000000000016000000000000003c420000000000006f711d99fb01000000000000000000000300"/96, 0x60, 0x423c000}, {&(0x7f0000014520)="494e4f44453031007f1ef0140000010000000000000000000000000000000000380f000000000000ed41020001000000761f1f6300000000761f1f6300000000761f1f630000000000000000000000003d4200000000000000000000000000007f1ef01400000000000000000000000000000000000001000000000000000000c995d9cc97070000000000000000000000000000000000003c420000000000000000000000000000000000000000000000000000000000000000000000000000380f0000000000003d42000000000000100001022e0000000900000000000000280f02022e2e00"/256, 0x100, 0x423d000}], 0x0, &(0x7f0000014620), 0x1) 07:24:16 executing program 4: r0 = socket$inet_tcp(0x2, 0x1, 0x0) setsockopt$IPT_SO_SET_REPLACE(r0, 0x0, 0x40, &(0x7f0000001c40)=@raw={'raw\x00', 0xc01, 0x3, 0x1230, 0x10e8, 0x5002004a, 0x0, 0x10e8, 0x0, 0x1198, 0x3c8, 0x3c8, 0x1198, 0x3c8, 0x3, 0x0, {[{{@uncond, 0x60, 0x10a0, 0x10e8, 0x8003, {}, [@common=@unspec=@cgroup1={{0x1030}, {0x1, 0x0, 0x0, 0x0, './cgroup.cpu/syz1\x00'}}]}, @common=@inet=@TEE={0x48, 'TEE\x00', 0x1, {@ipv4=@multicast1, 'wg2\x00'}}}, {{@uncond, 0x0, 0x70, 0xb0}, @common=@inet=@LOG={0x40, 'LOG\x00', 0x0, {0x0, 0x0, "53f99237f41c832fc8969da1f2b7a86ddedeb7587f1590839a7a3acebc0f"}}}], {{'\x00', 0x0, 0x70, 0x98}, {0x28, '\x00', 0x4}}}}, 0x1290) [ 1927.715337][ T3013] ntfs: volume version 3.1. [ 1927.735735][ T3024] loop2: detected capacity change from 0 to 262144 [ 1927.740513][ T3025] BUG: sleeping function called from invalid context at kernel/locking/rwsem.c:1508 [ 1927.747701][ T3024] (syz-executor.2,3024,1):ocfs2_parse_options:1455 ERROR: Invalid heartbeat mount options [ 1927.752448][ T3025] in_atomic(): 1, irqs_disabled(): 1, non_block: 0, pid: 3025, name: syz-executor.4 [ 1927.752473][ T3025] preempt_count: 1, expected: 0 [ 1927.752484][ T3025] RCU nest depth: 0, expected: 0 [ 1927.752495][ T3025] INFO: lockdep is turned off. [ 1927.752500][ T3025] irq event stamp: 0 [ 1927.752507][ T3025] hardirqs last enabled at (0): [<0000000000000000>] 0x0 [ 1927.752528][ T3025] hardirqs last disabled at (0): [] copy_process+0x20e1/0x71b0 [ 1927.762583][ T3024] (syz-executor.2,3024,1):ocfs2_fill_super:1173 ERROR: status = -22 [ 1927.771771][ T3025] softirqs last enabled at (0): [] copy_process+0x2129/0x71b0 [ 1927.771817][ T3025] softirqs last disabled at (0): [<0000000000000000>] 0x0 [ 1927.771835][ T3025] Preemption disabled at: [ 1927.771841][ T3025] [<0000000000000000>] 0x0 [ 1927.782009][ T3013] syz-executor.3: attempt to access beyond end of device [ 1927.782009][ T3013] loop3: rw=0, sector=2304, nr_sectors = 1 limit=2304 [ 1927.786531][ T3025] CPU: 0 PID: 3025 Comm: syz-executor.4 Not tainted 6.0.0-rc6-next-20220923-syzkaller #0 [ 1927.786558][ T3025] Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 09/22/2022 [ 1927.786572][ T3025] Call Trace: [ 1927.786580][ T3025] [ 1927.790660][ T3013] ntfs: (device loop3): ntfs_end_buffer_async_read(): Buffer I/O error, logical block 0x900. [ 1927.797683][ T3025] dump_stack_lvl+0xcd/0x134 [ 1927.797735][ T3025] __might_resched.cold+0x222/0x26b [ 1927.807720][ T3013] syz-executor.3: attempt to access beyond end of device [ 1927.807720][ T3013] loop3: rw=0, sector=2305, nr_sectors = 1 limit=2304 [ 1927.815302][ T3025] down_read+0x71/0x450 [ 1927.815344][ T3025] ? rwsem_down_read_slowpath+0xb10/0xb10 [ 1927.815375][ T3025] ? rcu_read_lock_sched_held+0xd/0x70 [ 1927.824665][ T3013] ntfs: (device loop3): ntfs_end_buffer_async_read(): Buffer I/O error, logical block 0x901. [ 1927.831570][ T3025] ? lock_release+0x5cb/0x810 [ 1927.831603][ T3025] ? rcu_read_lock_sched_held+0xd/0x70 [ 1927.831641][ T3025] ? current_cgns_cgroup_from_root+0x204/0x400 [ 1927.831677][ T3025] kernfs_walk_and_get_ns+0xcc/0x3a0 [ 1927.831705][ T3025] ? kernfs_add_one+0x4e0/0x4e0 [ 1927.831737][ T3025] cgroup_get_from_path+0x61/0x610 [ 1927.831774][ T3025] cgroup_mt_check_v1+0x19a/0x2f0 [ 1927.839939][ T3013] syz-executor.3: attempt to access beyond end of device [ 1927.839939][ T3013] loop3: rw=0, sector=2306, nr_sectors = 1 limit=2304 [ 1927.840913][ T3025] ? cgroup_mt_check_v2+0x2f0/0x2f0 [ 1927.840960][ T3025] xt_check_match+0x275/0x9f0 [ 1927.854692][ T3013] ntfs: (device loop3): ntfs_end_buffer_async_read(): Buffer I/O error, logical block 0x902. [ 1927.864354][ T3025] ? xt_check_target+0x9e0/0x9e0 [ 1927.864394][ T3025] ? __bitmap_weight+0xd8/0x110 [ 1927.874675][ T3013] syz-executor.3: attempt to access beyond end of device [ 1927.874675][ T3013] loop3: rw=0, sector=2307, nr_sectors = 1 limit=2304 [ 1927.877730][ T3025] ? xt_find_match+0x6e/0x280 [ 1927.877775][ T3025] ? xt_find_match+0x6e/0x280 [ 1927.880869][ T3013] ntfs: (device loop3): ntfs_end_buffer_async_read(): Buffer I/O error, logical block 0x903. [ 1927.890939][ T3025] find_check_entry.constprop.0+0x31a/0x9a0 [ 1927.891068][ T3025] ? copy_from_sockptr_offset+0x1a0/0x1a0 [ 1927.891105][ T3025] ? kasan_quarantine_put+0xf5/0x210 [ 1927.891134][ T3025] ? trace_hardirqs_on+0x2d/0x160 [ 1927.891159][ T3025] ? slab_free_freelist_hook+0x8b/0x1c0 [ 1927.897392][ T3013] syz-executor.3: attempt to access beyond end of device [ 1927.897392][ T3013] loop3: rw=0, sector=2308, nr_sectors = 1 limit=2304 [ 1927.900923][ T3025] ? kvfree+0x42/0x50 [ 1927.900956][ T3025] ? __kmem_cache_free+0xab/0x3b0 [ 1927.914689][ T3013] ntfs: (device loop3): ntfs_end_buffer_async_read(): Buffer I/O error, logical block 0x904. [ 1927.918783][ T3025] ? __kmalloc_node+0x73/0xc0 [ 1927.918815][ T3025] ? __might_fault+0xd1/0x170 [ 1927.924994][ T3013] syz-executor.3: attempt to access beyond end of device [ 1927.924994][ T3013] loop3: rw=0, sector=2309, nr_sectors = 1 limit=2304 [ 1927.930303][ T3025] translate_table+0xc26/0x16a0 [ 1927.930350][ T3025] ? __do_replace+0x990/0x990 [ 1927.943016][ T3013] ntfs: (device loop3): ntfs_end_buffer_async_read(): Buffer I/O error, logical block 0x905. [ 1927.947572][ T3025] ? memset+0x20/0x40 [ 1927.947606][ T3025] do_ipt_set_ctl+0x56c/0xb10 [ 1927.955351][ T3013] syz-executor.3: attempt to access beyond end of device [ 1927.955351][ T3013] loop3: rw=0, sector=2310, nr_sectors = 1 limit=2304 [ 1927.959298][ T3025] ? trace_contention_end+0x153/0x1e0 [ 1927.959343][ T3025] ? __mutex_lock+0x231/0x1350 [ 1927.964724][ T3013] ntfs: (device loop3): ntfs_end_buffer_async_read(): Buffer I/O error, logical block 0x906. [ 1927.969434][ T3025] ? compat_do_replace.constprop.0+0x400/0x400 [ 1927.969478][ T3025] ? wait_for_completion_io_timeout+0x20/0x20 [ 1927.974720][ T3013] syz-executor.3: attempt to access beyond end of device [ 1927.974720][ T3013] loop3: rw=0, sector=2311, nr_sectors = 1 limit=2304 [ 1927.979613][ T3025] ? ip_sock_set_tos+0x30/0x30 [ 1928.236646][ T3025] ? nf_sockopt_find.constprop.0+0x22d/0x2a0 [ 1928.242716][ T3025] nf_setsockopt+0x83/0xe0 [ 1928.247144][ T3025] ip_setsockopt+0xee/0x100 [ 1928.251928][ T3025] tcp_setsockopt+0x9b/0x100 [ 1928.256573][ T3025] __sys_setsockopt+0x2d6/0x690 [ 1928.261488][ T3025] ? lock_downgrade+0x6e0/0x6e0 [ 1928.266335][ T3025] ? sock_common_recvmsg+0x190/0x190 [ 1928.271662][ T3025] ? __ia32_sys_recv+0x100/0x100 [ 1928.276600][ T3025] ? lock_downgrade+0x6e0/0x6e0 [ 1928.282030][ T3025] __x64_sys_setsockopt+0xba/0x150 [ 1928.287158][ T3025] ? syscall_enter_from_user_mode+0x22/0xb0 [ 1928.293056][ T3025] do_syscall_64+0x35/0xb0 [ 1928.297479][ T3025] entry_SYSCALL_64_after_hwframe+0x63/0xcd [ 1928.303481][ T3025] RIP: 0033:0x7f76f2c8a5a9 [ 1928.307949][ T3025] Code: ff ff c3 66 2e 0f 1f 84 00 00 00 00 00 0f 1f 40 00 48 89 f8 48 89 f7 48 89 d6 48 89 ca 4d 89 c2 4d 89 c8 4c 8b 4c 24 08 0f 05 <48> 3d 01 f0 ff ff 73 01 c3 48 c7 c1 b8 ff ff ff f7 d8 64 89 01 48 [ 1928.327806][ T3025] RSP: 002b:00007f76f3dda168 EFLAGS: 00000246 ORIG_RAX: 0000000000000036 [ 1928.336484][ T3025] RAX: ffffffffffffffda RBX: 00007f76f2dabf80 RCX: 00007f76f2c8a5a9 [ 1928.344587][ T3025] RDX: 0000000000000040 RSI: 0000000000000000 RDI: 0000000000000003 [ 1928.352736][ T3025] RBP: 00007f76f2ce5580 R08: 0000000000001290 R09: 0000000000000000 [ 1928.360715][ T3025] R10: 0000000020001c40 R11: 0000000000000246 R12: 0000000000000000 [ 1928.368776][ T3025] R13: 00007fff2a6891ff R14: 00007f76f3dda300 R15: 0000000000022000 [ 1928.376759][ T3025] 07:24:17 executing program 0: io_setup(0xe1, &(0x7f00000001c0)=0x0) r1 = socket$can_j1939(0x1d, 0x2, 0x7) io_submit(r0, 0x1, &(0x7f0000000000)=[&(0x7f0000000040)={0x0, 0x0, 0x0, 0x1, 0x0, r1, 0x0}]) [ 1928.394105][ T3025] xt_cgroup: invalid path, errno=-2 07:24:17 executing program 2: syz_mount_image$ocfs2(&(0x7f0000000000), &(0x7f0000000100)='./file0\x00', 0x8000005, 0x3b, &(0x7f0000000200)=[{&(0x7f0000010000)="02020202020202027468697320697320616e206f6366733220766f6c756d650002020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202027468697320697320616e206f6366733220766f6c756d6500020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202027468697320697320616e206f6366733220766f6c756d65000202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202027468697320697320616e206f6366733220766f6c756d65000202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202024f434653563200007f1ef014ffffffff00000000002000000000000000000000000000000000000000000000310000000000000000000000751f1f6300000000751f1f63000000000000000000000000020000000000000000000000000000007f1ef01400000000000000000000000000000000000000000000000000000000b83abdfdac0a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005a00000014000000000000000000751f1f6300000000000000000300000058bf00000700000009000000000000000a000000000000000c0000000e000000020000003748825f0400"/8480, 0x2120}, {&(0x7f0000012120)="00000000000000000000000000000000a92c83a1352f432895326cda257351bf00000000000000000000000000000000000000000000000000010000ade51acc7e0cd8aecea1549d00"/96, 0x60, 0x2140}, {&(0x7f0000012180)="47524f5550303100c00f0020710e00007f1ef0140000000000000000000000000f000000000000000400000000000000db7466b36d0c00000000000000000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f00"/640, 0x280, 0x4000}, {&(0x7f0000012400)="47524f5550303100c00f1001f60000007f1ef0140000000000000000000000000c0000000000000008000000000000000cbc8352f80100000000000000000000ffffff0300"/96, 0x60, 0x8000}, {&(0x7f0000012460)="494e4f44453031007f1ef014ffff010000000000000000000000000000000000380f000000000000ed41030011000000751f1f6300000000751f1f6300000000751f1f63000000000000000000000000090000000000000000000000000000007f1ef01400000000000000000000000000000000000001000000000000000000280ff83ca00400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000380f0000000000000900000000000000100001022e0000000900000000000000100002022e2e00003d42000000000000180f0a026c6f73742b666f756e640000", 0x100, 0x9000}, {&(0x7f0000012560)="494e4f44453031007f1ef014ffff020000000000000000000000000000000000380f000000000000ed41040011000000751f1f6300000000751f1f6300000000751f1f630000000000000000000000000a0000000000000000000000000000007f1ef01400000000000000000000000000000000000001000000000000000000e8a6f417ed1600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000380f0000000000000a00000000000000100001022e0000000a00000000000000100002022e2e00000b0000000000000018000a016261645f626c6f636b7300000c0000000000000020001201676c6f62616c5f696e6f64655f616c6c6f6300000d0000000000000014000801736c6f745f6d61700e00000000000000180009016865617274626561740000000f000000000000001c000d01676c6f62616c5f6269746d6170000000100000000000000018000b016171756f74612e7573657200110000000000000018000c016171756f74612e67726f757012000000000000001c000f026f727068616e5f6469723a303030300013000000000000001c000f026f727068616e5f6469723a3030303100140000000000000020001101657874656e745f616c6c6f633a30303030000000150000000000000020001101657874656e745f616c6c6f633a3030303100000016000000000000001c001001696e6f64655f616c6c6f633a3030303017000000000000001c001001696e6f64655f616c6c6f633a30303031180000000000000018000c016a6f75726e616c3a30303030190000000000000018000c016a6f75726e616c3a303030311a000000000000001c0010016c6f63616c5f616c6c6f633a303030301b000000000000001c0010016c6f63616c5f616c6c6f633a303030311c00000000000000200011017472756e636174655f6c6f673a303030300000001d00000000000000200011017472756e636174655f6c6f673a303030310000001e000000000000001c0010016171756f74612e757365723a303030301f000000000000001c0010016171756f74612e757365723a303030312000000000000000200011016171756f74612e67726f75703a303030300000002100000000000000b80c11016171756f74612e67726f75703a3030303100"/896, 0x380, 0xa000}, {&(0x7f00000128e0)="494e4f44453031007f1ef014ffff0300000000000000000000000000000000000000000000000000a481010011000000751f1f6300000000751f1f6300000000751f1f630000000000000000000000000b0000000000000000000000000000007f1ef0140000000000000000000000000000000000000000000000000000000085ed3c1db603000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f300"/224, 0xe0, 0xb000}, {&(0x7f00000129c0)="494e4f44453031007f1ef014ffff0400000000004400000000000000000000000000110000000000a481010091040000751f1f6300000000751f1f6300000000751f1f630000000000000000000000000c0000000000000000000000000000007f1ef01400000000000000000000000000000000000000000000000000000000cccff09f620200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001a0000001001000044000400f30001000000000000000000f6000000100100000800000000000000", 0xe0, 0xc000}, {&(0x7f0000012aa0)="494e4f44453031007f1ef014ffff0500000000000100000000000000000000000040000000000000a481010011000000751f1f6300000000751f1f6300000000761f1f630000000000000000000000000d0000000000000000000000000000007f1ef01400000000000000000000000000000000000000000000000000000000075330279202000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f30001000000000000000000000000000000010000001842000000000000", 0xe0, 0xd000}, {&(0x7f0000012b80)="494e4f44453031007f1ef014ffff0600000000004000000000000000000000000000100000000000a481010011020000751f1f6300000000751f1f6300000000751f1f630000000000000000000000000e0000000000000000000000000000007f1ef014000000000000000000000000000000000000000000000000000000009a7d2e882505000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f30001000000000000000000000000000000400000001801000000000000", 0xe0, 0xe000}, {&(0x7f0000012c60)="494e4f44453031007f1ef014ffff0700000000000020000000000000000000000000000800000000a481010091040000751f1f6300000000751f1f6300000000751f1f630000000000000000000000000f0000000000000000000000000000007f1ef0140000000000000000000000000000000000000000000000000000000025fea9c2220600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008f11000000200000007e0100f30001000000000000000000710e0000002000000400000000000000", 0xe0, 0xf000}, {&(0x7f0000012d40)="494e4f44453031007f1ef014ffff0800000000000200000000000000000000000060000000000000a481010011100000751f1f6300000000751f1f6300000000761f1f63000000000000000000000000100000000000000000000000000000007f1ef014000000000000000000000000000000000000000000000000000000008f1f0d952103000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f30002000000000000000000000000000000010000001c420000000000000100000001000000344200"/256, 0x100, 0x10000}, {&(0x7f0000012e40)="494e4f44453031007f1ef014ffff0900000000000200000000000000000000000060000000000000a481010011100000751f1f6300000000751f1f6300000000761f1f63000000000000000000000000110000000000000000000000000000007f1ef01400000000000000000000000000000000000000000000000000000000f539bcb01c07000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f300020000000000000000000000000000000100000028420000000000000100000001000000384200"/256, 0x100, 0x11000}, {&(0x7f0000012f40)="494e4f44453031007f1ef014ffff0a0000000000000000000000000000000000380f000000000000ed41020011000000751f1f6300000000751f1f6300000000751f1f63000000000000000000000000120000000000000000000000000000007f1ef0140000000000000000000000000000000000000100000000000000000090aa2dc04d0200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000380f0000000000001200000000000000100001022e0000000a00000000000000280f02022e2e00"/256, 0x100, 0x12000}, {&(0x7f0000013040)="494e4f44453031007f1ef014ffff0b0000000000000000000000000000000000380f000000000000ed41020011000000751f1f6300000000751f1f6300000000751f1f63000000000000000000000000130000000000000000000000000000007f1ef014000000000000000000000000000000000000010000000000000000008ba223c5f20600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000380f0000000000001300000000000000100001022e0000000a00000000000000280f02022e2e00"/256, 0x100, 0x13000}, {&(0x7f0000013140)="494e4f44453031007f1ef014ffff0c00000000000000000000000000000000000000000000000000a481010091040000751f1f6300000000751f1f6300000000751f1f63000000000000000000000000140000000000000000000000000000007f1ef014000000000000000000000000000000000000000000000000000000002b6b221d32010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010400f300"/224, 0xe0, 0x14000}, {&(0x7f0000013220)="494e4f44453031007f1ef014ffff0d00000000000000000000000000000000000000000000000000a481010091040000751f1f6300000000751f1f6300000000751f1f63000000000000000000000000150000000000000000000000000000007f1ef014000000000000000000000000000000000000000000000000000000001a2efe98c1030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010400f300"/224, 0xe0, 0x15000}, {&(0x7f0000013300)="494e4f44453031007f1ef014ffff0e00000000000001000000000000000000000000400000000000a481010091040000751f1f6300000000751f1f6300000000751f1f63000000000000000000000000160000000000000000000000000000007f1ef01400000000000000000000000000000000000000000000000000000000304f318b65040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020000000004000000010400f30001000000000000000000fe030000000400003c42000000000000", 0xe0, 0x16000}, {&(0x7f00000133e0)="494e4f44453031007f1ef014ffff0f00000000000000000000000000000000000000000000000000a481010091040000751f1f6300000000751f1f6300000000751f1f63000000000000000000000000170000000000000000000000000000007f1ef0140000000000000000000000000000000000000000000000000000000039a2374834010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010400f300"/224, 0xe0, 0x17000}, {&(0x7f00000134c0)="494e4f44453031007f1ef014ffff1000000000000008000000000000000000000000000200000000a481010011010000751f1f6300000000751f1f6300000000751f1f63000000000000000000000000180000000000000000000000000000007f1ef0140000000000000000000000000000000000000000000000000000000089fc747cf707000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f30001000000000000000000000000000000000800001802000000000000", 0xe0, 0x18000}, {&(0x7f00000135a0)="494e4f44453031007f1ef014ffff1100000000000008000000000000000000000000000200000000a481010011010000751f1f6300000000751f1f6300000000751f1f63000000000000000000000000190000000000000000000000000000007f1ef0140000000000000000000000000000000000000000000000000000000096f2f575dd03000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f30001000000000000000000000000000000000800001822000000000000", 0xe0, 0x19000}, {&(0x7f0000013680)="494e4f44453031007f1ef014ffff1200000000000000000000000000000000000000000000000000a4810100d1000000751f1f6300000000751f1f6300000000751f1f630000000000000000000000001a0000000000000000000000000000007f1ef014000000000000000000000000000000000000000000000000000000000ea913a3b7030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000300f00"/224, 0xe0, 0x1a000}, {&(0x7f0000013760)="494e4f44453031007f1ef014ffff1300000000000000000000000000000000000000000000000000a4810100d1000000751f1f6300000000751f1f6300000000751f1f630000000000000000000000001b0000000000000000000000000000007f1ef014000000000000000000000000000000000000000000000000000000003feccf2644010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000300f00"/224, 0xe0, 0x1b000}, {&(0x7f0000013840)="494e4f44453031007f1ef014ffff1400000000000000000000000000000000000000000000000000a481010011080000751f1f6300000000751f1f6300000000751f1f630000000000000000000000001c0000000000000000000000000000007f1ef01400000000000000000000000000000000000000000000000000000000fe0c1aafcb0400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e70100"/224, 0xe0, 0x1c000}, {&(0x7f0000013920)="494e4f44453031007f1ef014ffff1500000000000000000000000000000000000000000000000000a481010011080000751f1f6300000000751f1f6300000000751f1f630000000000000000000000001d0000000000000000000000000000007f1ef01400000000000000000000000000000000000000000000000000000000cf49c62a380600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e70100"/224, 0xe0, 0x1d000}, {&(0x7f0000013a00)="494e4f44453031007f1ef014ffff1600000000000100000000000000000000000020000000000000a481010011100000751f1f6300000000751f1f6300000000761f1f630000000000000000000000001e0000000000000000000000000000007f1ef01400000000000000000000000000000000000000000000000000000000f4300ba0d007000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f30001000000000000000000000000000000010000002042000000000000", 0xe0, 0x1e000}, {&(0x7f0000013ae0)="494e4f44453031007f1ef014ffff1700000000000100000000000000000000000020000000000000a481010011100000751f1f6300000000751f1f6300000000761f1f630000000000000000000000001f0000000000000000000000000000007f1ef01400000000000000000000000000000000000000000000000000000000f5bce4d3ed03000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f30001000000000000000000000000000000010000002442000000000000", 0xe0, 0x1f000}, {&(0x7f0000013bc0)="494e4f44453031007f1ef014ffff1800000000000100000000000000000000000020000000000000a481010011100000751f1f6300000000751f1f6300000000761f1f63000000000000000000000000200000000000000000000000000000007f1ef014000000000000000000000000000000000000000000000000000000004834299b3905000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f30001000000000000000000000000000000010000002c42000000000000", 0xe0, 0x20000}, {&(0x7f0000013ca0)="494e4f44453031007f1ef014ffff1900000000000100000000000000000000000020000000000000a481010011100000751f1f6300000000751f1f6300000000761f1f63000000000000000000000000210000000000000000000000000000007f1ef014000000000000000000000000000000000000000000000000000000002a04fdb11b01000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f30001000000000000000000000000000000010000003042000000000000", 0xe0, 0x21000}, {&(0x7f0000013d80)="c03b39980000000400000000000010000000200000000001000000010000000100000000000000000000000000000000a92c83a1352f432895326cda257351bf0000000100"/96, 0x60, 0x218000}, {&(0x7f0000013de0)="c03b39980000000400000000000010000000200000000001000000010000000100000000000000000000000000000000a92c83a1352f432895326cda257351bf0000000100"/96, 0x60, 0x2218000}, {&(0x7f0000013e40)="7024f50c00000000803a0900803a090010270000060000000000000005000000380f000000000000ed41030011000000751f1f6300000000751f1f6300000000751f1f63000000000000000000000000090000000000000000000000000000007f1ef01400000000000000000000000000000000000001000000000000000000d394d8b5740300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000380f0000000000000900000000000000100001022e0000000900000000000000280f02022e2e00"/256, 0x100, 0x421c000}, {&(0x7f0000013f40)="0000000000000000000000000000000000000000000000005f608695f80700000200"/64, 0x40, 0x421cfe0}, {&(0x7f0000013f80)="000000000000000000000000000000000000000000000000b6ad528d050000000300"/64, 0x40, 0x421dfe0}, {&(0x7f0000013fc0)="0000000000000000000000000000000000000000000000009a048ad7060000000400"/64, 0x40, 0x421efe0}, {&(0x7f0000014000)="0000000000000000000000000000000000000000000000001f5df08806000000c024f50c0000000001000000010000000200"/64, 0x40, 0x421ffe0}, {&(0x7f0000014040)="00000000000000000000000000000000000000000000000090aefd31bc000000", 0x20, 0x4220fe0}, {&(0x7f0000014060)="000000000000000000000000000000000000000000000000eeffe33800000000", 0x20, 0x4221fe0}, {&(0x7f0000014080)="c024f50c0000000001000000010000000200"/32, 0x20, 0x4224000}, {&(0x7f00000140a0)="00000000000000000000000000000000000000000000000090aefd31bc000000", 0x20, 0x4224fe0}, {&(0x7f00000140c0)="000000000000000000000000000000000000000000000000eeffe33800000000", 0x20, 0x4225fe0}, {&(0x7f00000140e0)="7124f50c00000000803a0900803a0900102700000600000000000000050000000060000000000000a481010011100000751f1f6300000000751f1f6300000000761f1f63000000000000000000000000100000000000000000000000000000007f1ef014000000000000000000000000000000000000000000000000000000008f1f0d952103000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f30002000000000000000000000000000000010000001c420000000000000100000001000000344200"/256, 0x100, 0x4228000}, {&(0x7f00000141e0)="00000000000000000000000000000000000000000000000093abe5e6030700000200"/64, 0x40, 0x4228fe0}, {&(0x7f0000014220)="000000000000000000000000000000000000000000000000b6ad528d050000000300"/64, 0x40, 0x4229fe0}, {&(0x7f0000014260)="0000000000000000000000000000000000000000000000009a048ad7060000000400"/64, 0x40, 0x422afe0}, {&(0x7f00000142a0)="0000000000000000000000000000000000000000000000001f5df08806000000c124f50c0000000001000000010000000200"/64, 0x40, 0x422bfe0}, {&(0x7f00000142e0)="000000000000000000000000000000000000000000000000bc07256bbf000000", 0x20, 0x422cfe0}, {&(0x7f0000014300)="000000000000000000000000000000000000000000000000eeffe33800000000", 0x20, 0x422dfe0}, {&(0x7f0000014320)="c124f50c0000000001000000010000000200"/32, 0x20, 0x4230000}, {&(0x7f0000014340)="000000000000000000000000000000000000000000000000bc07256bbf000000", 0x20, 0x4230fe0}, {&(0x7f0000014360)="000000000000000000000000000000000000000000000000eeffe33800000000", 0x20, 0x4231fe0}, {&(0x7f0000014380)="0500"/32, 0x20, 0x4234000}, {&(0x7f00000143a0)="00000000000000000000000000000000000000000000000033f428d205000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100"/96, 0x60, 0x4234fe0}, {&(0x7f0000014400)="0000000000000000000000000000000000000000000000007375191502010000", 0x20, 0x4235fe0}, {&(0x7f0000014420)="0500"/32, 0x20, 0x4238000}, {&(0x7f0000014440)="00000000000000000000000000000000000000000000000033f428d205000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100"/96, 0x60, 0x4238fe0}, {&(0x7f00000144a0)="0000000000000000000000000000000000000000000000007375191502010000", 0x20, 0x4239fe0}, {&(0x7f00000144c0)="47524f555030310000010004fe0300007f1ef01400000000000000000000000016000000000000003c420000000000006f711d99fb01000000000000000000000300"/96, 0x60, 0x423c000}, {&(0x7f0000014520)="494e4f44453031007f1ef0140000010000000000000000000000000000000000380f000000000000ed41020001000000761f1f6300000000761f1f6300000000761f1f630000000000000000000000003d4200000000000000000000000000007f1ef01400000000000000000000000000000000000001000000000000000000c995d9cc97070000000000000000000000000000000000003c420000000000000000000000000000000000000000000000000000000000000000000000000000380f0000000000003d42000000000000100001022e0000000900000000000000280f02022e2e00"/256, 0x100, 0x423d000}], 0x0, &(0x7f0000014620), 0x1) 07:24:17 executing program 5: syz_usb_connect(0x0, 0x0, 0x0, 0x0) prctl$PR_SCHED_CORE(0x3e, 0x1, 0x0, 0x2, 0x0) r0 = syz_open_dev$sndmidi(&(0x7f0000000040), 0x2, 0x141101) r1 = dup(r0) write$6lowpan_enable(r1, &(0x7f0000000000)='0', 0xfffffd2c) r2 = syz_io_uring_setup(0x17f, &(0x7f0000000440), &(0x7f0000ff2000/0x3000)=nil, &(0x7f0000ff3000/0xd000)=nil, &(0x7f0000000340)=0x0, &(0x7f00000001c0)=0x0) pwrite64(0xffffffffffffffff, 0x0, 0x0, 0x0) bpf$BPF_RAW_TRACEPOINT_OPEN(0x11, 0x0, 0x0) ioctl$UI_SET_PHYS(0xffffffffffffffff, 0x4008556c, 0x0) syz_memcpy_off$IO_URING_METADATA_GENERIC(r3, 0x40, &(0x7f0000000140)=0x307e, 0x0, 0x4) r5 = socket$inet(0x2, 0x6, 0x0) syz_io_uring_submit(r3, r4, &(0x7f0000000280)=@IORING_OP_CONNECT={0x10, 0x0, 0x0, r5, 0x80, &(0x7f0000000200)=@in={0x2, 0x0, @empty}, 0x0, 0x0, 0x1}, 0x0) io_uring_enter(r2, 0x45f5, 0x0, 0x0, 0x0, 0x4) socket$vsock_stream(0x28, 0x1, 0x0) pwrite64(0xffffffffffffffff, 0x0, 0x0, 0x0) [ 1928.486925][ T3031] loop2: detected capacity change from 0 to 262144 [ 1928.549266][ T3031] (syz-executor.2,3031,1):ocfs2_parse_options:1455 ERROR: Invalid heartbeat mount options [ 1928.593611][ T3031] (syz-executor.2,3031,1):ocfs2_fill_super:1173 ERROR: status = -22