ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff", 0x100020, 0x1fffe0}, {&(0x7f0000168a00)="eb52904e5446532020202000102000000000000000f8000000000000000000000000000080008000ff0300000000000002000000000000000f00000000000000f4000000f400000025f72e792ed6fb51000000000e1fbe717cac22c0740b56b40ebb0700cd105eebf032e4cd16cd19ebfe54686973206973206e6f74206120626f6f7461626c65206469736b2e20506c6561736520696e73657274206120626f6f7461626c6520666c6f70707920616e640d0a707265737320616e79206b657920746f2074727920616761696e202e2e2e200d0a00"/224, 0xe0, 0x3ff000}, {&(0x7f0000168b00)="00000000000000000000000000000000000000000000000000000000000055aa", 0x20, 0x3ff1e0}], 0x0, &(0x7f0000168c00)) 19:43:20 executing program 0: perf_event_open(&(0x7f0000000000)={0x2, 0x80, 0x27, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}}, 0x0, 0x0, 0xffffffffffffffff, 0x0) creat(&(0x7f0000000140)='./file0\x00', 0x0) r0 = openat$fuse(0xffffffffffffff9c, &(0x7f0000002080), 0x42, 0x0) mount$fuse(0x0, &(0x7f00000020c0)='./file0\x00', &(0x7f0000002100), 0x0, &(0x7f0000000380)=ANY=[@ANYBLOB='fd=', @ANYRESHEX=r0, @ANYBLOB=',rootmode=00000000000000000100000,user_id=', @ANYRESDEC=0x0, @ANYBLOB=',group_id=', @ANYRESDEC=0x0]) read$FUSE(r0, &(0x7f00000021c0)={0x2020, 0x0, 0x0}, 0x2020) write$FUSE_INIT(r0, &(0x7f00000000c0)={0x50, 0x0, r1, {0x7, 0x1f}}, 0x50) syz_fuse_handle_req(r0, &(0x7f0000004200)="000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000dc4e00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ba045abcd5dfc67d000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000230000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000209bfd66eea2105600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000dce8f517e517209d0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001354c4b600", 0x2000, &(0x7f00000062c0)={0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, &(0x7f00000007c0)={0x20}, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}) syz_fuse_handle_req(r0, &(0x7f0000006340)="550213a07196529afe0c0440192d7e6b690b2971077c794178f51d5e3ccb8213c2ab2c2f9eeeaac3d26a2f97d4f45f2a79306cb35d2773c4877c1510919c87833403a04e443f0f338e5651891573291dea98a917f4f62456553ef1e4c2ff39f3b6bfa857c2fde23f3bc356a09b1ce900401bba2326ffdbd94f33d8de2e2e88332b80cd5fef8a5482b44a6e9ff53976da78235538407a23561df1fcb2aa25e96496e60b50e63f955b575f6ea992ec1120ef5d703a365589739a47991ed90db8f5bc075ebc30f1ae98d2dd9424afb051063d9f8b29b3891c4a15a7ebb498efd4ad84a1432bcfd862661ff920704ec2481ea567b9accfd0089aa576182565159cb218bc81fee7abf14cf7fd7ad2fbc9f84b66ad2ee9e72efe6de57459a0d8ab7de571be5409f07b18e19573dcabc67e9577aefeb5d076c8b331244dd8f7a4be820a55a59b007298911dbce2d9243184d8db00cc124833f82d55562ad21f64dd300a0a0abeaf8ed2cbd4e373cbc6b40510b77e9742b208a6b6b2166a9b640c6013a905e7f5966613c40b14183adba502a66538f4d146d80e1e38bcfa430b6ab8f23772c41fc291a01817fc447cd8920886669c439c31639781c8a1750182979dc91939a93f2e8df8823a83d4c00a109da1b99aac9f5400b0a18187cd936c69efea3c5959e34ef5ab1b4a230750e4a121540f88d01f97690c18ea599525db59dcdf9915ef90dbc390555742f68c333611731945467777315115fd08343175c16195186d91c317e64a2a557ceb44c930c144aa8f3a1600d064d2fbc841226ec4fdeae163c62a293851c9aa54715cf3caa3bb22012ab2244821077a83b4c7f6aa67752edd136d84df86932c625b6beb4de2499915337bc62c071343ca01d207913718d363abc6e1a0b36a891d46016f586c8b8cda719a52bddad74b872928cb772d86db68d9431686e742ad8e0d83597e94d6dcd01bdb14b8b5f76e56ed293fd7ccfc3d25459b5e2e45d6bc8cf7159d9f819d0935f3cd662e68d1d16d5bb2ee3998d0cc8fdf553356ccf56c89a5e0ca635faf9224c81902393b1fbafb098a86ebf6942106d6ff686f4ac73fb7c86bfccef7852ac6304c04ef9fdc156540ef072f20a403a869dfe9e8db9c58e1261367d2b8f9ba76a002953ffc679fddb9046fc94bd365e5d932cbf2f5e9b271300d1b90481d72f9fa41eb6e206c96c1096756d4de822999d0396eff77fe86c2bfa2b3dbdb0cfd54b3ddf378a0bbfc4397cac8ba586a3d6b4144e8a9b7a7ac998626afc7d1197c3ca954e48fd7f63ea52edb77e03176720deb4ef7942e604e5a4f500887a77b22760eb33d98d7612ce737af9ee0e78fcb69e7838adae221b4de45e8837bd468f7a405e5f8ed26275b22feb32ba3f12a893479f273e5eaa73658f1dffe09c10baee49dfd8df0501000d74198173d277f7123c4e131fe7db8f74d0390f0222f92c5859d57c709e54b4ad6549185357837b4b7beb28687c35fe62502e1a9a1dbc0f803580a6170b56e08c2d0104fc12c9b47b022bc4cb8474d4b40fe0e13f89a6b6acff2f11d24871ac50c4d10a63080d8f8368a4f982e65ad9fcdd37d809b1b55fa5aeae6377634a973482354ba216d9e24e39edd327063e4852c05db7458f56e6a0dd01440b0ead91570967008128dfc43b48e73fe380033e90848e9fd780be49aba2ff3c97b49f556f8c2c57ee69a15ff01fda1df9ff4434d7aca8049b3146255f870fac754dbb42945165ebbe7279b4998576f6e16332896b48e893f06148b7d470f513efa0f1272ae8578ba66e2042134cbdfaa1cfdd36a7f6c1874e858029429d9bb4f87eca7f7cf1900cd1667caf0f4cb74135301fae9e958f29bba29459de2208f84f4e2764e1fbed3aee309e74fd8598c602d6522f7aea29b73af70bebf10c924f588d7024855cb84f9098cbc7141ce5a6168ecc6d28e774adf9eb6aa9f28838e3e380b7b12dfbcdaaca0401efe633ad4ce12138d8a995b8b27721a2815c5e6331d2fd803c13e3175a5c02c5b5344409b06369a9d4b457db201512f00f53df67ae21fa597f5f3709ebedcfb347d6bf49df34179d0b7169a75a15af29869b2def01a7f5af087e444933ba11d51ce973d59a47efb884daf6cc5258d00a3d7f3ed3cfe450c72cdc5900569717c8699689607e66c5b5d6dc2ff8dff62e2047b30e80877827d2abba12e0af85b77246c7bad649631a9a0853cb79c7ba27f5f6ef5dac4613a7b5d1de79d83958ce4b37a17d593756f9c19cf3fffbcdc70eeb8cbecd6e77cb03e66fa3846bad89a2fe1e284f1fb227340cf4f4ce5bca6289c52410e98966446b4369d261ffc8057d56b625ddb09160298f1a015c1657c88603822566d9b4483801b4f5baaab4c530e61d9378132ec647d2444c04c446d3f2b972a46355ec08e505fa9995624e281292736808c8fa947cc4564c870f03ad931f58f68512c1327eaed18db6a55960ef8177b089011617e64df1d8dc0b9eb3010885f9eab7e098e5711f9e41f74d7b28943586666eb74ff79f67a16ae8d7e75561741c85c5f822f61b2552f877e739a77e20678d2c7a86cc6caa5852278be0cbecc1ddd7674b872e5d2e69c9a7383a33dc8f8c56548da95621211ac70dd89aa1862fa8969138e84810ec854b7b923bf7510ed97cb80037a84a8e66650bba2319dc30bbc3f40820e1b389f684db2d30ef28c470d82acea65419d20f518bbb6a99d734e82ed60fef979e6115fe870498670af117be3cec9aaa577caf1f61d5bbd12ce72a35b77bbc366c6790f44464efafb9cd8f9a097c6ac5423ed20e335c3992cc950b90fcbc7b4c3df2521a31d917af73058c93c1f3e26b47487736691c8b1370ddc613bad413982261e4e036579188b64cd9f39b1b4a32ca356769621c507b37f814ee0480b1a966ee9ebb56d6979a9d38236664fa1fcff19c8f0a429d86632e195e569ec47035c4eafe9185d19dc5e8c635a361af2b4fa33815361c000844615bce501648ee70730d7a1b1da4f0630b1ca90904f80e9e1efd1c8e1b61b05c4f040d5a0430381a53f4a1570491719560a3fb920d6722cafa0755605c955526e618221d1e4e766c35e84bd79ae479b5d178b241662cf9a124825101cc5e1373f3c9ce7625f7f08119fb011acceb88a9ff553639e7eeafc93b6135ecceb6eea4c3dab709005dd7be2f1490d1d648c99058f272bc325ce5fa663f4e68720a5f2b31986c66580a2be4204cf311fb3e5d61310445e942712bf5dc7e66a9370a5a4afb6aa03fefa3f0503d53cad9b79a3ef2ee9000edd8990d75ffa3759dbf0469b6e393bd3627a768bea18f533453b38d17dade925f7ca6babe27adc6fa3048d2a65bd2b0fd840a94ac5f317a1c839738ac89e7b22d1766308dd8247862f304fa51d727a27f0137fe19b371e5946555093e7ca69139c48afca4b4ac46c8d2f56d5e673e8b52dd94857fe953d10ca886c921b6626e869ac794a78d40bf49a025860fd57a0f437a4e650a9db9cddc93f8556482cd3676866d903b0f70601cc4eff564eaab292a4208d0534321e60119ffa6177934a2d1d7a6a1f1803e762c8d30e2a0d5311148bc21e4745b7c3dd57d0a616a2c49569942f2b48360df6c54f7a70f8a585b3a0d54feb7986d7d72ab0e16ba14187af4b9ac5a69428f1f61fe25e13cfb97ea30fd9a43e53b6841cdb766d6b3dcbc70277f2a0a12bff718b5bc50dec6fde5a0e24d23904edd201c8dfd51c1d198e325d65c18ce4d5ed1c6aaec28d40260949ed5c6bdc90f976c76dfdf399a9f9789fa9e176910f7ffb6427c3821fbc83747cb0d2ffe34b0b18fb34ddcaa70bb4624acd1ecf208e428b7fe89ed0cb0db2a7d74b284cf893807b4f76bdcfe9088912c8e83144b78ec8407aa37e94e5454946890174aa6be77e42fa0d764ae36855608d63d269164c3ca6a989232967f168c3f9b41c1204e02d7e9dc06010106f6b41987728775a5c31906bc7dfa33808e5523eacf7c914373ce8e61ea29407040feef8e9511fc04b7f2f9936a3161fccb7deecf83f507840898672fe13846ff8185ee0aa6734a704e4b7ab6ba3fb1c601e57528d68f8955fe42fcfa2ab0faae4008023b8a34ce4f861b5b86b5b507ac1cccf38355c5f0191e8ab29c90627657d6e100957cae6fbb3f0f4ae2049ed3a341732b4730b5bed1dfa97f0976dfebaf03a305da2a79d6b8f2e86f46bd7e257d170728d5aa55f786b5436a221b0d74355d55123fa1c9faf017103c3d6a6ed1e8e26fb8defd944c49929ff5ed4ead4e5782d14b09c9ebd593533c907679aa6a0b94fc8494291acb16e4bd2e4b953ac96f90ccee9e11ec88b4f590289915a6368716dc3e28dafcc5eab060d2c48911f288e501226a5145ea217e834eee7ebf0945e53baa08b8d72acc67fb14dfa47421081434b291a15babb97588c6ed5c7e79299056c70f5362953ef499b7a88c373a23302e3ecbc229824de95f12595f12580a3898533c48ef2385d7f398ce31c3dbb1c02547e84d0210595bad9a149ac653a3537edb419316f244f6a75108997b6597700df352b66acfc191c6b234c5c7beb2acf943f8274e0a159612f4ed440f3ff715fa2cff21b32444e5871a050e33e17695f1e3e7f65f82fa8783870c0c93f961807c6a56e666a5443948e2721570a9068ecaac4839c8209654e2efde43141b1551c9a966812b13bf4f9cbba828a1eb948a1e41a122e175c0ccaa9794660446cf18335ab13d1675a26eb81b1abdc776472d5da139a507f452159e3416532cf59eabfe01e72f4a4bfe86d293a7124ae3478443d00452c1a9be915f54ccee5d857fddb9ee4986c9186857fb4635a2bfb7b8885418fe48536cf60c67c10c729f92a8f91826e85e34e3eb78c186f2ff93b0972fbef4cbed448618e1c2cd7b5cd1b5d529317981b4ed973080615e0b385b41778cf536d9e24fb0ce048ec0dce5b075febaaf34de2cf59d9030e1a9ba924bbb5cb4098d82c511cc42cf9823ba77849bc867a6876096561ac209c2659baae0374ae4abb39b0ca54874eda8425942012fbca984a4c6c21071137eb4399d4c6891222c8aaf43cc78b1c8f2a9cec6b5acd748f9ac4de37b1dd18cd0f8d7f20337fd392ed10258457950184264a559b80c1ef92868676b258a9b579ea604adc0bd388a8b30822af1fa5120aba51e38e1dbaa840472e1f1f0eb86af5ec9f87a7324e49c4c0bd2b9365cb3d8c92acfdf479548acc9aace7a342284eb895b564fbb8bd577d4a310dfcf78f15be69da13b6710abc4cbe240a62798fdfba1b8a019f9c5fb462bf040cce44a1c8bda3819ea42627e71a5bbb0f8f3648daa2d26e81fff4dbaae971deb7dbd407b7583c9afdb7e7dfd7b81fbf1ca84d57b27e059acce70cb27ef3742e81a77889b01795adb0f070077b758d80e7a05dc66da4b9fed081100c3ccb5fd8ccc14dc36173673917dac8c6fa72c5989d0f6e0bd97501cbedd0a97137d3add8444330e1859005804e485fc997da58927f8cefabd995124e6baca61029dc3c4b091234610e04a7e8457c1dbd28a542497035615a990cd675d36eadd703492562404d366ac4359e66e5e8ec9e40cdf96cd1fdfbc0f2280d4358d96bdec660a6ae473723884aa79bd61b96ca11a7175d68a401a0b77882e7a44b3765a582018abe6a367d1478f5b06859e777f35d8f01a39c7960cb26477207dbc9a0a2af6d5beba095c606a9a11ee236aaf91e6b3b6be0639b2a13bf4471acc9f7f2f052d2a86c7ef0f0afe6ceabdc4f99036a05120b0c49cf80ec92b62c766035a5887f4bc8fa1e0c9c69a7b690c7cc2c8870f8e7beacba9b1a27c66f8d02e33c957d923b0a9dc4ef2b3237d2f83c72651966f8b13b24e1aaa5dd0122b75e3afc4cd478e296924349e077fab31a38e38cbea1dbc22689b82a1a4698fa4841bc0c0530dff14f368537c07eeac4a9c2e02e3b21669d0e039af22a4f38d4c21d861968bf312ede1ff02893fc44197363dfd89b5b704de61d609fe1d9013508e5b2276953ba5b1f8018c3a7b3c233d4cb3269f10ee6ca2fa9de79efe709659538108b36c1b71e4d2c3602459d57b8f46ffb541e2a6f4a19438fe3bd14be3e5682ddef68519cb56d79dd5b2b40d1281e84623b01af3c11f7b2cef780d06a0158ac7becf9b7cdc51618db8e7148a93637ca1a875d8ca2db07d78a5554760b792412c7c108335969c676888fa2d180030a8bbaca1c6c36b1fa26461146ddb13c6dc4247f18985a6cdfbdcb5a3455f497cf674fab04c84906627d32a0104d1cb3b1ebb9f398fb6c3a9af34a05ed7bb900335f1b84d2ffa2a589ec46f44399f4eb8f96928aa073f414765347cad3b0e03d551166e5e2ff9a89c15dabe0d46c925767df0f85e9c438ad99f0309400efdda91d4e61d0e592f8fda490b6791e41c098a9a839e040f5580b2d70f714e3b41ca8cb7a21fc2a778eb18a1e2a32c237c665fc4c496732e58b16f8607ab26b07bc59147218a8011068fa1d117b7e13a3c2b8cc6abcc8e184b0c7d061e94c0cf8c61b6ab194f3df5747ce68b3923b5998901c3d1294ba2a0df9fdc7a76c505bfd172a5c5bbcc0df736ec54a2a11b3a26115f1afd382adba6e3fde1e781737c12dab5c19bc5d27e91eab6579298d4b46c60c200d309df433841311008089ce0ab703ad7b7e17426391e22be7548e642cb4eb4703179cb102643aad424ddb72267b6cec2702fcacf19825303858fdeca7d5d3979c900db3ba5be2301c04a78c58ce20ac8f4a6bce27c4865f36511a4adb99ea25ebda5a6701c58347342ac876f80805695b8ad67501a793670fc76221641b89dfc5519389bc5ba56cd17b47bd2e075139c8db24e4c3a332723358ff5b8c6d3dc53fc79982fbbb6b887b36d52232d6d79684fed3add6c84fe070aedbd833165e5b547a3dcbb4977595fa9fb6d7d8b151858c3967b3e599571340568a2a651a3c6dad3a4a24127c28db3f27853cf3738a3476120f845df7803690ec6f97072b2e040995a957dfb6e3c27d55b7ff94f0fc44eb27b7fb81d5601ae88bd6de44163128bf423f1f76bdfaa9a170e43136acb8f5d3bde2b81e381635d4895f224fd8b7d9b04c8115454b0505ee03b332419c6ca3ffec3b127b036144ad4ea5b7d97482d298493e04c994ff2152815607c695991e85065f2c66a36a0c347a1e0b10ecf39500ed1476e9f6bb09ba569236d24459def02c37768956e567ca7c5c1c2ac05fb818d8610da9fb50cb6263edff4b6a165a13a1977f14f3b9101831b0f364f26e803ebede14a32fd37c5067c2be8c50be29d6757767424248ffb425d1780f9f164dd1d5a1999870af4f73bb09f632227351e0c5e24c357b7646edbaa599e0b62c569e32dbf0080dbf509879397c90ce4799b59e8888ae27844c760f901197250d395780e2e1087bd327c155dc31dc5b408e847b031f93e48345d3b32387934c9e68c9556b9d275d1634adecc0204ffb35d1960e736a34f0b07e2e7c4ffaf84ebc7ad39de16f968e1462c5371db06fdd21fe51b08ca295acbfe676e1e683bcb2dc9d3522b86191a151ac590fec45867cd81b97fd9a060e0e26f362b842390ba6dcf66ffedff1d26b87016b7108b4eb4a6dee0384a789d2305b871d7caec898358f01346d089844973aed3ae0a7a8fc6a5cc90a1533e0bb3696e243b28927da1630837a6aff33c2e8af1a7bfbe2ff8060d8df29f6b9643dcbe2e2a8721795636fe7b3187a48dd08a003f27dc2ddd76fb84db15572e0b2b857ed2ffe73526d92ee2a9b13f2693d2023bc7feb2ce769c2e8aa9973be33c77b5f8e147d4c7f414b18c9edc8cfa0169cbcc0c26d59f016fa1e80157bd8dac895a794a7211d83c84c7e003e663f65532018b22ed3e67be4eaf592a8a18b986245f6a8fded9b1562c6a106e04190cf0260905561565a131c3074a7af5a18dad69aa7d62636b9313c1d3e5689671912df51131315f715ea84d57849dce2ab105af433b034501128e2286e1d05384289711dd151ad097484755d32531508949a6e3caea36e6858ecb895f0ff5cb71f8b1cd677405139d5e95c6c34f421b0b1e0898aa74f7a96d7170dc0df19f1b88a0463608d964446967262ff7acafa54b0f95cd0c1b01c232db641cade388b6f348784e18cd33e97c132dfbd501700108b59ac80692371a4bca4f608d9357c6e1458cb372aaf02cf8742b164bf69aab3aa1bd6911202ae7d13f2d1cc27741e4856c9e2d654f72c205a9914969317b5dcefc8137aa564283d64f71209f82fe928836da1de181d6a52c9cdf1be072f8b5c44b063e7e3d629157ae1a768cfdc7105c6b50234b1dc8412f6d98038520fed97db8347cf02924291460fe3d392f21d7ac31aa6e90995756b6dc198c04a6c6eb6c5e41e1eddb8c78feff740273acf8938c0f52c108e5bfd7e559d73346e0b97595125992bfd6aa2097c0ff502482a641f8fa3b2f411a9bbeb9f8c03582ecd1d756013d793bb15b4c1f45f0a988f7bff685c493df30bafebfdcbd6b2ac26a743a0a21443ba776f17f021e80df5eed4926b10be1c952f839f6c87bc2457e1b95f73287895961a0d5874e61da6214b738124fc872376940480705aeb628919d8c9912909823ac384f6a072c72c03c12e2aa8462ce83737244f5525cebafbb491a2a75b4ae8006c2c9bb7d20b190987f5f85afd5b4c1fa8a643820590dcc5e9e55749df8e4aaac858fea295be26fe3891762cfc2fa45f823066280d2afad8653b94a813265f9d9107831181cf8839c72aadff85c745af743e0f22a30c28b4cfea2aa1139790d3e7b491b6b092bbb18bf773b06c3077ad3f1261b8f401e56d4c250c0f30e997e6a546f9cd1482b4717534065ffed131a8e4691e28456abc3ceca5849302cb85eb977a1743e9836ba2ab835f622cbfebbafac8a8edd97e5441ea0f84434b9949c4e5a91a7684947c0370d271e9788bd8222d5f53eee7491d20eb46c7321d5858e427b028ad279cb540c1a547fd18adea0e0d011cb7d251857c1ac23fb502f2ae515aa8c90bfa1bd693313100b6ff278212b06efb23fa836fd97331a9a276d3ec5f2256245674d65d043a072dae13c2649ea2f578583caa55b916ee6d65f510a94ac3ab6eca201f34f2074e631715b40478bafc594cde728d8f695287f2afe8af28859d5389034a75f89140eff05615cc41b06cc6879030cb0dc1788e4f34b3007a4081a4a8c8d8d47860699fd029d7d2a17c1ab2678fac43fedde3eacb441df00e61acf90d208591f70c75dd44892edc144795f86de15db7d9ae43dcb088c6eae8259dd224fdce809d6b4e2f13e6fe8e5b6da195ba0287ecabd18d48d1fd4f1e9438e120484df2e1ad9ceaae247b5b4c639413aef383d948dce80446ea125b67627d25f23e9fdf477351ac2d4f741e88dcd5f91550c71e72b84c90a5282f94bd9d1f08e3e240a0a4bb4cf556a52a994a8064a2c77e41d66077dc039957b795fc28239896eb2068ad16e84196b491dd47e16e12009398db1be984aaf6bf62fdb471a456b32c58f77c158461ac844dfb0858cfc81f591ae0105edde98acf7ea1c09599ae0e5c45b62f039e37a48b7ed91282aba6aab1d2c2b039b3f411b2f6897464a8ff2c333717e60a298be2709389cc644c70ce9c1a483a61e13617f0dc1902c3c8d84ca8ff9c0f43d022f448e100732afb8655c726e33ccdc2785d5ffd7ee533a1676ea93cb7f962dfd8ec47a32ef703fd560965b20a2fcd52207db1ef0046e4ddab569776ee7cf45f476772aafd16622b2613ccbcf4213183d5f079e9bee36d86ef709ae54422e38abe7a1db408b7ebfc72f6ca2b5dc19001142773fd827e72318c4fee1af716211d2401b104a2a40a2a3f4f683da6e5c8d827f798a73d2fa189371efaaf6f6e4c1a8460f6e6e51064dfa079adafc7d1f0472d042258395b2aaff31e943078e44a660b979e91e240628a12074a069b7045f20c9c9a9b2823d52d1a71cbd107b5b888170c2766fb012f60024c0aa6c5a7505cb17d925943b25101a0f9d2e78f40cca2d1266e06a85ab32f8f60dcd9caaad0bb5f7129fce17ab4ab9f2f1d9ffa5b9c3662498737d020614e54cffe567fb6d746c9a33065933c59b0f66429eb43013b43306506e0cb158d79d61938f52ec82a373bf7f03995e63b00fe4b109b3d918c7fb3e9d777771a510e1ba97321d2eff470d390776cd39cefcc1cba44bc0d0a5d7ab038a2cf4ae61285df7fd2c863d3ff26640f140d6c05222f1c7def48851a367405776cb72f19049b9f87e6192227bbddbfad8f8aa4822f6dc383b94e54821de59ed22ebca2babfcc7672606b90efc14eff624f338d0b63fb20fe28b3b3b1588788c12e77e20992e82eae0aa6ecf03a627fd66f251b6ca686142ea50223db2cb10936cb8e619b811a21f914b3f8ed1db52da0a40fc63df4623eeba59309ce490860eaf0020e63265a565102e050340f9148144011ab34c8617a8806153c8ae062293937ba31f789c97e937e7226a5e2715a214120e38fdd66c67e19d40471994d2b84d9f0acbfe2c255c671f3d70a5305dd13e7555dabbbb87cc4e62b1b34cfcc5d1b34a664d79a46d6826d4eebdb5d7df86128a3152ec3bedc77f6c1445732468ed7b91123cf314843e939e369b69d0c657f612a9a9c9ff40c396d2a3c05b27a57dd6198428f7fa2638eae170fe584310c11d0b13a15ec4c1b658d5782b20de550b166f2d89835a34a893cce987b8a807e21686ca78493c906285d7915390bbec275bd5535804b46ffc2de6cd313235ab52b8e04e98b4a7539b6298c974254284dcb32875029c8066988f141034fc156a5fa861826e49140cc2222099608bd279e6f7b3b12db95caae852eccbd8ce691e0bb937a6c83f929c3517a0eb2f247b397c828ea7a97be6cc6a357e47fd52df8be5581ba6b606b81f173656c4f7440b54e644ab775befa10887a1b66e1f27b98708e80c7e2bd8791ab006db14f261e8ee3ff42f3b8a3a899d8146d24896f8f6e3e7e104ef85fcf2f9453847774f63650f63cf6d944ebaabb9d7f5b3f1a3175860acf493534325b9b5da74bbc226c5f346aafe11a974d9accccee2df02a81d971f564bed3f7fac752203ad2c1e8cff090f8ead99885ac203351ec4280a1d016ca6c520061d864ed0fcab91033eff1f8c12de4e831bfa957c1e89921b97c5891538b9dffbf93b424e905923ca5f25bd64a17d3726922b9cdbfeed6c80ff9d06a3cfd0e9497a7b961aaf9538852a8e93eefc8ab49f416ee9d1b22d70472fcd0a774543cd8ef286ef9fc586c3661b3c8dd8de3af588f1d91bbc1d3f354b5a05f0689ca8e75f5ec3e1f75988f9058f0c154a4d2a748b2bf6b8705242a739356329878b0251f2683960a6e18f1e9719623bcbaf3176fbc0dda2125f506475c81c8fb1364de92538400a4278083aa7673e9fdd3a13e75ae0ccf78321dcaf637977fea58969252f6485a0c7644c2b072485dc76748ae76e2a229430b3b5a1d3b7785dc560f5914733425a02c6cbf177e85544b6ea8cdeb42f05707519d79d01f18742305d3fd952246abf5732675f000", 0x2000, &(0x7f0000000280)={0x0, 0x0, 0x0, 0x0, &(0x7f00000001c0)={0x10}, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}) fcntl$setstatus(r0, 0x4, 0x2000) syz_fuse_handle_req(r0, &(0x7f0000008380)="1d3fc0588fbd1ee18d3d558a5847e5909b75ddf492b38ddca57fa90102c1981d37139db16dff89af93eba795c940c2869e89d66dacb9e0aed49166803315f8c1e3a428d3394e202f8983f2a7a557b15c11e2ae42e2f07ac634034c2c6d63fe5505d3cc16fb48a8119d815c5d5391518b847b1334f3d717d9ab5a4c85a58da58c7438e79be665e1b196897bdb462a2266798fb036d83bb993d48bfcb2774216931c85a4fece4b93b635c3f1e651560fcd6ce0b182aaf777cfa0bbbcb6e5e9f4d450fcb95559468684612a5bc1582e273fe8bd58088cf411e97f9b671a81d18e865c2d899716fa59c45d7034afa7ce30b800091bd01ca3df0e083e1457885eba6730a6c70601bba70b2323d6b669898290f43afd84c333ad8c4c3960f70d0e47eb8511071b4e2c6ce2b12332632052cb4367a98593bd39bfdf76d228925d3e7208fcd42d701881c3cad1cf204669e4c598c7ae544bdcabac797503bc1896d36bd0be9edb543d5428cb04daadc0b4e54144fe8a86e1e372cd773a00a3e759fee51aa7cdfedb8c2c13ed709add3235e70c1dff10cc5d473f6c1ea92354c8bb991be1c39f4fa739824cefb41621e8a6cc475599ad2a86f2cd5ffc85684346bd6aec793b06141ed44a4eea375dedfff21d720c725562ae759c5f4737c34d8f1183e6254016f5d54a90114ce910b4c214f35721edbab6b9ef69c89fb3f770915511ea31622c453c53f646b205a0c383cadc845ef9769e99dd58f242b24e98d8d74622f4b7a2b42eeec0881b435404805f177865eeb3263ac63038270dc90b418407cbd984de98df8a449ed3466bbcf6c4b140aa4c0fbcfd4d88e1534e17218c87c32fe2d88807e308fb8c3ab6ca8d145f7c6406459b926e07cb30ce4baddbb0824c0378589b3cf3e16c216163e2966d271b8484a47d3baa946cdae77fd61a10472da8efc228e405ab686ff5a29ccbf91f6cf62dc371e23198b34880f200428f4ca5214c2966c426ce9bdffd7ee2c597d80ff570f44f3a07f5eb24fa4483e2938c98a9e64459f04913564df5d1b29f93b934e95fb4f04dce100324e5d7e6c22b042b8773a792b88405831ffd63a5dec2e764df571214aeef33cbc6e66dc157a86dbeb1d55bb3cbf8e063dd536d0e0ff006ff850ab20fab4023ffaa07b6ab6f8651ee9ed593774a3c3520f595984278b30fb4c0cce3a0afb4836952a7115ac345557f1871511415bdb9f593057624cd8a150954241cd60dca17b688d97416c29b23a767e9184db7e19a74aee2f17d11fb024d906a22dd2ffa2da04c97348b74f4ab99248059d1ee542c5837acb69f1c83f50dc66f9e1674c1b157e1e4f95eb462cc8b3db4cb9fc52086c17f4d5a9fc1f7748dea1fd7af47a7989c1219fd22c91e95bd299d3ef22bc73409d9949422b6177a99b6a9f610b737887f75f718257b5b2dd515acff039886505cf2d8fcf9cf69f74b812121d219ab526480a565a6ec9c2dd4de1b5d2632833a81b5fd445bc049c5dfcb242abe6141943fab1417ba9d2174ed25c521a8e5f6d1354c93176b6d847aa9108b8f49313aa6fdc0a88d08d3cec4f9e623f829dc03aac91c5847d5de8d21dade12e7efadf216ac3746530ffda5d038fd0bc7d105fb8b9fd1cb2e789622b39c0d559c3f887e11d29cbbabfdbe9603ce261549babcba3ecc739203f08238a5ec44719015cf3bdc0eac85c3d72ca34725f09ef8a5fa7cbc3d9197ae877314de309182505e0dcdebb78fcafb35504344770642bb13a22914b9fe76fb948ff03a1a42cd1a799dc0330ff0586aae32fe45238978d2db16629ff8751893e41e9ac72303d91de135313999dde4d93e881b0f1998ab87e5f8e7463261fe872b3ec4ab2344d26a982e286e5e7bfa8126ef4de16fc6107e1b077598e1347cc7b74d57565d4cd9b66e76f6faf51b247ada9672af011db71d48ce36bdc6fa234e6ccbba32a450f837a7180fce70b08a199e7e4c4bd3af39c6b3e78d56f300a45463ff04a55542b01b721229fb35a788769dffe8105171a0cde67cbd9f066834fd24b0ce4ac39a0ab5f96e3f24917385ecc635d7b8be5d9585a5d389316f1323a9916241ad9b490c7505701133451705ad712296bc4519aacf073fa7419a9a81470c315390d4e22820eb0dd0c9605132016f883b8a5e9b9b9e08cdca196abba7f78732280b0b93278f469cc7ba81dc6e764746ea2604d8ce78e301bcf2b9e638849a36fca9f9386f5acf8d9084594c5f20504ad382d4c083c5965f633248f20f1c373e6ae69719bd21355290f50ed84da142127b2c6b0a4cdd4ef4c753edce171d49438ebd31223e8a36f3219a3d6c60ca3a08f88f10bfae1e6a2a5391846ef4e6dae8442b17f7d9f727f47bcd0208185ff18474f1ca1b64580069e35e47c9bff3e421799220dc01eafe2122ba5faff63cd0f275c831e7933391fc180840e9bb5acb5357b196d045853398e93569b56732a637327aaba610de7a00fcb10410457e4493d532c99bb6e95786517add55467f06a23521b7e92be2dca54c9c3df2542384a82d27cfd02bb16e44a9d8c5f07f7e232b794dfbaa8bcd89c359054c188bf5ea5c251bb787282d86b0ec738283e16ed5dd7a74b03cf483fdf8a14a82cf47f4b04185edc4a2dbfd6356927322a15dbe4f35848e6f10eb983797f2886a266b31c0ddda9e2f45282d137f2e6031d2a756a56552a756dcaa24821e3a54fc3cf38c08feb31cd4e32a464d9399b10d7eef1bd627cab3f22775f4ff9d8d5d017ed0d0ad49dad13ea4d1d2cff663d9796b43998956d17bafd8fa49b934dee9b583fe62088b251919291e3b4ca1cb89b9cb035ad8179f2b60d096f96dc1efdd350e09ca32abdd88bc5bc283f0a3fb32588c87e37e2da427a469689c65152558e312536a2fd5edf9bcc19f25501cc9de0fc3df1a595b61ec856455d184f77619ebe89911e165d81597081f903e9bf69e1d51c6fc1880186a356157306c2ef2860d04cbeea0286e4f56d85cdf91cdc2029bb5d1b77debcce4886041e3ca2d6ffd2ec999e5f177418f21979f3135ff517364d99db378ab03df76febd0b2fcf72e7476956428ca20e4be0c63779b112a393a05c5d44d6dc8088dc57a9c0a5b0c5e2a41d9a265a400e62ccaf48aa478f929b354f2013e3287546dc8a811fc7964a50a790888ddc1814039eee62313ddbcf1c55154e386b011b36d8c74888669f334ff7adb1dd421d43b6223ac8beeee98ef1e54e6dfb4fa69ca8a321b3c2edd30143fc17806b04f8bfc403a55467be88cf8507d94f245ca59d1ee050f4312169250ac8ca1eab6eb00df7bccaea896a6e2cdfce521a404913df83bca8e699913b4cfaaf62d00b90eeb3e106eb4aafb7bda8d0dc5383d191d54a253982bb3885dd6afff5f0d85560ab129bb4b411af28740534edae48bc106ac43c3aac6528f48e059d8cf0cf870f9dc6bb669f2b43bc1b42f46a28d82c200717be88d4493572535d2663e7500d865bca452bb7540d163823e78302dbea5cdece7e72b84880423a18fdc1a080e0f0bdc7a58b04b8959ff6f67b224fe72ef22fbf6adf4812e550772fcc5949a157371f1def1a020d951c005140cde6c887040cd035dd972fc75b7b469070b61e1a442a78db4c74f482b950ac7aae40b009c2d6736e9dfeef0e9c9d718409063c57b082beb648fe8b41d3ecf3ded5cb24f7c20edb6ec753c4574a594b62edd81d4deb269b9cde7e2cd63d8d6da58736454e383415574b6f88b0c4dc158be230beb2a67fce06e7d8a70c554ebc79c2d40a31b1c19797000a8596a79e8ef11d87bf2922e8805c455a3da4c4ea2c22ef52ece8082708fc1dbed09872afa250f8351778548e576e97e4b3da023455f8db349fcdf8523f52a56c9b1f3a863652b11ce7cc619d6eef1611e97d7f94ad7dd65f54f88cf49d3ea4490fe76411dd3de5799174d1017b9f3017c2c3f8f30bcf28b68d7833b7a8fa46c3c3b346e1e2f55d680d22c7136f9de526427657ee167cdf90c90142ba705465ce94bb1803a1540b36cd8d22d6d9115c002f2ce96bbac79a573ea858cbb8977d9087f1e0063cea8c86a9671405c4fea89012b241d94a31b15ad36cf388ce3ebe924019aa3ed069bd07a24a46f7f818fda0d6463893621d6531541a57449eaf57dc09c9767a598444e07f79e2beb85362ea93ef04d37e5c4438c8093c026b3c042bf3cfdf11e5db84c05d7cd6bb090ee7686d87551a807fa47c07a84e9fb490f0531d38b86c344ae8b48aff790bedf407b71cc49440bb2300f9d9f73726daa89c7b3ade0b84323a6da6e7639652b004ddd08dcc03a7064866bda6b17ce8c003737a4c3416551a6fb779c414d4fdfcd3b29bd0daeb69c965f8395269019691e1552da684b06febd81d5f71b9bf095ffc581e6333b10f7fc4a3f365c0bce141b95a6fe580a4183713103cae76c776bbd29a8b26a3f2314609d1540eae73e43ba296d7576e2d8769bae7cf7518966b631bb3b215fa6a56b97ea96e116421ba669617ecae72e3aa186b23a289059c16fae6aee21ddcb669592e5068d84287be2d80a72642de4950366b346285b42fd89f49ba3002315c4cb76c12ca0f96b0eb13547e701831646ba663b0622eae281da69c699860728775e6f71ef3e63cc010a2eefe8d4dc3622232d8abc022fbdfb7821f02da20ffc938a7228d5a8eef8a9e4fcdc2ae68ff7ba6f8ff7e7e36fa40d35658e727554f696c4df6a45647bd661450a2404dba0b6021bc7a82df05b4076f86a7f33faa26195eedc2377158fdae5c4704456805c8458f4d643e356736c2378172d11c33dd73b0e760ca9eb5e12d707001955d3e6c85d427a472de77d6c1e28220c8d84eae5c4403484bb0d1b7d207c0c9ea476d2efd0babc5b577fb333bfbccc396471997de9d71b3c2624be1d155ad787635d4fee3f253e5b5f9cfec484cbdd510bad883b79381e8c608ce793cfe175ddcfb49ac6f2cb67474b415568ea90411f455b651c5c6890c94047d86f2c6ccfd787361d6ede1fa2ad89e6dc9fa796405d8927c5197e17e771173ca5ffe4af4864bf6a9ff10ae142ce2ebd664ab94ad37352f36be1afb259c7b8627849af46447ac05600ebc9eb636aa2e56c0c8540857595c114e4c1c45bd735bd73ddbe21823232e1db6ab4b985a681ed4ef505e6025d4d234086f4bd8b422e4e7e31e823bf5ec1d514a328e1f9ed98eb289de2a44229c66382ad64e3a1fddc548786c52c4d74e6e5dfe1e471c20a8bd6a90c1320318e74e7a1f3d7dd04eb81b37b8157db526327bc7bdaf16b181ef71d813588c2747039cd9c62f2afb253ac3a743d083ee53ad6828060b214e69b73b2064e5a01aca0ff1f5b30329ab5fe285193711f4401bfda2c89afbde31adaf1e0a1a9dedac7ae09650183f460f4a93b0e1f48728fa0c2b1b70c5a2ce4cb3d99627f9389d94aeb64e27054cc71b26f7f281874fbfe82ba74e609a2ac05ed5ffaa344fa14091cddf0c77e883a295d529916a16d06b4207e4a72074707ff4f17e9657b6f55d021bfd432de6ee526d26b4f70e5f8da02c23d43cd2b0ae674a573258df27b775db221d416cbab68084c3f5214b199e2fcd84705772984c92c8bcffe37950e8f3fab716f994765d0b09549201bb19ed09364880ed17bfaf8be10e842051f9f096ef864266593b6d97767b20a5530683c88dbda542095e9b57ce6e04b19a682652a4b72cfb17844a0f6a9a1a89f3f26ba56a05117d20f3bfaeee61d7deb85532ddb7d662163aa6386c91f40ffa00db6f4a6523b0b494330a932bc544629c294044fd0ac6049f285923b613bba81064f84ffa71a900fa9732023c8fdb0c480f3154d0dd815e9f2661b3ccf3da7c3127156e3e094041e365c97dcc6e74965a659034701b9961f9b755eff6066448f65601e9e44e12a7423d94027e4f118b5cb9f33bd762520afaecacd404c6dd59dd791c1bbc87277d5028596cb62ff14be1146ea78626e182a5beb492503b18d620543301161de533af3fc1f666727366f10c784e2f0a1bb5f5860b873f03f26b03707c2b8cdca494b08cc98c365009d22f3231c7eb2a24dd6cdfacd577ac334c2a07bbea2af22689fa35cc663013588419b5256fbd52538c9c5e708ffda77c0e97ced2e703ea5229d4eabdeaee8165e80d5867969269c0897bc45d06b96589eba66dad2f98aa72ee0aaa4aa88d6e4fdb0df504131909629eb4fec1de621e14f5445903716fce8049f89a0493607b11e596ce14c2e81ea0905922abd9c8601f558be28d8a409c360a279b86a2a3d09d8c422ef396979b9c3aac8e05b02975419213ac78dc677eb0b3a524ac0baa037012a97fbaade89b939f66d3cbee41e0c05c62b27fb0ae6bce02f7163da983ced2708c16b2351c1460131a9e922f1c1b6981c67faca4710346ed65a4ee56de725bd193bae5574ea91e104f660c4d502b7155eccd61fe4c5b819676b8727492768fad9d13fab5a240ebbb005741d5bbc215139e07be5bb73e3f6b4c4be9519e81c7cd088864c16e4650ac64418133650e26b9ef9020f55438acc9e7161b2c74bd172354ccc051e6c4a6897354bab543a7f742ce799a6e182b86839173acb03f39fdcd4a7637bb48d2e4baf031079687707612c006197ae598d335c463b6d79e0cc3bb7ecc278b9407a0d53381bf3cb65e78adf03a7dee07409b97d2df91413f04828aa2440049b9e8dc4fd907d879fe8480a239beedf8b729dd76042f50985db6761ac1f2e7f0cc48ccc7ba4d0634b0e816c8c68eff96832fbba350afa1107f2da7c53bb9ba8407c30e41da1278f31cbbcc394aafd6a1df76276e39a8d3c27c417753695a74e7252ddd27542b4bc2b0ab4cb001d01411d288749bfbc24ea8472e2906201655ee65d3f435f158d3295590eccb3e84b3f09e12db00382dceb8846fe155eb20580c20781619a894ec92d9a80a422a10b7ea440c4ea0bf3fbbebc89b2c11f7f3e858c16cb823e10203a957bc48959b1d5e3aa69afbb8a5ad1bf617ed59836a289dace4a5224ef9226a6f3d27f869292bfbbf3607f5aa807d294caa053a85a2f54d97f76adf509593bdf46054fac6e4a6b66f173a31d5eade9a38f5106a16704e80d61658ba3799b00919f87c0b02fc4f7c288c0252f46240efa9044d7458f6b92497321f696831565fca86c1c0bb72b4952102b777b466861d22f78dce75b8055dbe3d73168d41059715a23c9ed906e80b2353f32fd43e92d5ce90821bd9c6b4063125339b8f3a8df16ac4b1b0ef85cdbbc6f2acc15ad9e0aeb19bb0617f8623dc029abc232a67447b1ee4f6c4ce234c1ea467a20e8cd21a097f096855a75525c55a2b30c74ff8011476addeafcb18b64ea09600d7056fca53a12a1f89501d00dfcc81f74760fa26e081043ea648148b1ef1e4906e0a65154fde2c554b4c36e97de184dc9169ff3a326cf4a14708fe3c6466c37eed71c44143fd2d5e22443d1b61fe42fcf52207f17422a96b222a1c8ac8656fe98d7f9b5088a725bb3889ce24da112f2cd88575217ca6087cfa659374a82cd7cdb63b47c3979fcf094b62ff72fd4f0adf0750bb3e001ca7772f0733a5fd15e81aea1abd929df4cb195760cceed8d76b20bae92244c685b6a74be268c64a8960e1d6ec3edb9e70986b77eba84051c28900ee9b6c52d4cb6d67eaac2f5cc5bb79c12a5cd23a06f8605b492e28983443d245c963b81ddcba2a561957786a3698e2a0ccc21146a95ca4d7e4cfe16da4b4738a36c95d42f4a83217ebc7d5d1f17ddf5cf87f8ec8de65f0e69491686c973e69faaa179e52a828863797755deed4c1eed27d51a8ba25fb0821b33ffce69425d27ca2ce73c7eb9bb976f3be629c5608993eb49acf22e78c1002ef8d53ba36ad0b913887a105c0c5cf1d2561b5c9e3101925d758039f6d27ab42029d5ae10ca096b71e4cce05b7f8f3cad02f08b6e2148a3cb5f12f5577f52d118ea055b47b136da35283cbc6ab9570d61b54af491665d9bd141c2a11eecad22b00429b8c5d7ca9c94907429da625315826e99f3e61537a00b554228975cb593bdca2b28c1b022e8f4e6b61694fa934fe35501633bb8736021a08f58deb6d3d462fe00b7e9b5ccb7e2f065003b16d0e54c66a9c9d33966135e410aa0bf48f59949771ebb1d38b3902865fc309e7c25bb5b4b7de8611ffe178877c31a8d1b191dbdeed9a2348fff1b6217553bd30d3d9b7eccbf64b872b26aa811199c76915ba43c610bf4169d8ffe09eafc1b0a4eccbb64a031872ab1b3e7a9b9d9cf1e3ed1a1b6a5b4a32ab67edab8fd693360c62c9f34b00dabe47cf1e8428e28d1202e556160f0d4b6ab524107f5ebce2a4782061503cab2a1e1aebfdfa22edd4536dd051a860e9788a5a4691b243893ea6b8f647cd9094b643b9354a600591cbda3d762e7dba265b9c8e6c338151709322a51d4389431047afa1031d18aa0bfeff5d1bc28c5e013eef0a26a7f1eb3c4dbb12a215882897a65608fc3da16a6de1ee7349d9853f6faaed5fbd974fd051627ed762f74341c6ceb06d4d4d635f599aca02471ea5e3dd5012cae344abdc3f990e62fc07aa325757d1bb2ba0bd7833bbfd1ad4aabe86cd389afffab65c73df538d6f9b2da50b9ce1b1be4835f85f2d77a01594d35f48b370b0b11516e8913aef45196a24b290c7491ef39a3a6afd3790b93214837c3247e76ee41a4bc1539caa78adbc5b49d471a9a1724e62c5192ddfca31882350dd906560cb257c3582c4f294193dee760a15b35c9b746c690a4728acce6339496aeb75c2e350ec68acd49683d23140feadc2dc3eb118a8e87281c60a18d22fd12998c4c3c30fa76f9c76d1a994cef1dde10e4b5554e4e4bb0d164e3b85e5ce16cac42403d3b2c687a9ac0b8813a5a2ff6fdfae0c41d9bd4da4f2dad84a309ed3e6f353e9b29cdc9bcfc0c2ea73364554f5f9100b9a01e55fb3d1cd857c9f42378a3ed6f32d87a9cfc4c8366d6a28297128226b6c31612f9b6c1deb481dc930c417f64eb53cf74abc5723375e6370498817273981af928e9d64c2e2c1f7aa46039f2bea921ee5505cdf50f5c18d0bcb6f4729936e9a0ac4cdd2ed63138e68ff225a93b21279722f0174dbdd83b7fc3f6e54f602107c099f18d31fb5d682345858d154475ec38820fb3f9e7d340e9757854944aabd9202d4154b3ae6996828474f0cf82d9162c29706a455253e2b7a236b7c54b7deaec10ac95d71c93f7ae57751c75a98a59be69628454cbc0632ccb25faa8108de381e12cb18758648ff42225d26cb7c3c78745b0fbd371480f58dbae1e32da2f5edd0b487a6cdc0200536c3a45533e91b3241f2d19b008de02891276acf3194deef6b28133da6b7aab644ae69e0d310cb29c9b100eccf9cc2aa140d718ae5a7bb03895ba915f2ed39a681152c6567390465f33d6addfed145bdff55795af7fda6bebea3c98f9b4d0f9538c9513d80c39369506638ac267bd2afbb0d0abe3c44715bae6a8f2fec7bf3178a5c8821c5a6b32692f13153c364ce41a6e6e9201b733bf8fef31d33d058af4891138acd31b38ed8dec427b1f5b29455c4721bc1b69a9fe0c588b134831f57c64fca00fce1b582042bf68c8d4f05e27c685c81677ab6331a084fa16f6df88a6a6c161d4a2043ec2e2586bfa0aff858793f41cf2003092e55205ccd9084422d53245ee37aa8f16604944051fd787754eef613a5b2a0893e0016fd00e7ea3b13c6f6a7f22ef4346790b5f2d2c0482eca4f59441d488edf51a5e71655f2c6a7e6f348e8f364ddce5a57e0252a6ad7dc6170ecd50b267673d3054b53f03bab834de4ff37dfb731ea2a2d678e6791c508b838bfa9f274a8ecf5f499ebd356976e989cdf7f25010cf28169a56ac2b2664bde64611273af5b475546b43056f436845c7987a986150bae9121485ad36d2991e5bb14015bb360a04d989dab9615140841fc55e6cdaf73c914120fc6fd8c1106d75305bd1ff6fff2318ba444caab42268716d5c12dd5afd97abc3a048f3feda20622c1f16061f4ded6ee023bd1fa87496081c08f4dc84d946cf0ed270122b6c36da77690db383187a0270e5e9dc2c7b7f13a6548dbff4a462424973e424ca4f16ee07956527336d26d86a3810b4747912d0d72b66ae8c5cb58c500f6d48c07479d74ad29cb2107d3bc2a0c67ccf82af7e19734902b3f1092a515f71deff0c98babdf0c6a06104c0fd996567bcb0d4970bffce62889c6847316bea599d7a2f35a19adaa500a0aa8c8f50bc44f80b4a0a0f2607a8e78dbe95fac49831e0d54c57b415bce00047d12b16c50c511e96ebb39271d85653edc76f3099effd558bd90e7b8fd0a5fa50af4e424c37c9ef5e907051e61b08ddfe49cb318c37dd5978d0f11672efdbee14949ebd178af583860979deb98354bbe911582b6b4b22aedc7ad1b9e25f4dc500362ec7531789e5b84420d8abc72778dbdedb38ccc1e9aebedc8aa345a96e6af55b57e612d7438aeb0442f5bdaf696a072b72300930c6321bb3f9f0a6d4e42d66df2f3207822cd8758cf349ac1d291a474136dd7506a5d65446f7fe6d8abd942ccc84e93bb12f705d92cdc51a287ff98fb45b4a08f89283b133c14bf1840037118a5d518fdd4fa8c9e49d94d61959db5e8d90220d531efba57910110de3585b4ee4ebd64f89c745ab9d713604092aeb735683dded3de2da3af777371e6c678dae6c86ce8a28ad22cf02c2884987c2f61b2fc764eca2e3f515c35e6697f74243d3a2cf2f9cdf3d3c9cd116b8aeed884d3ecf7da0c1ad282c561f17d59ff9991ff1e31631b5360493f01cfee17f40cc18cc4cc77ff85f8762b6c8b19618f7a916d8caf1e3f3010e8452e1350c0091cc4bc5e2e303a9c3103789c534b511dcc56f895508d1103cede5da804a021cbfc9b0a23025ee40d9f23f03e1c3cdc1152adc9d5fbb394e6ae07202cfc61ba4b2186d88d13ed722afa5543aaca9bbccbf8d972cfceb33a4410947082a56a2132cfabec36e3fe9b18f3a88793e5e64dfa8b61bebcbb952d2c3dfde8e54f7399446e61c4c481f4d25c168b65234483f36daa99bf034542d3354ea93bed1f3770570f503e5e59de2a8d3c61751f4a45d52ee887390a7bf2821219aef4f1fc2746e30decff269ad83b7dec01278f4952c759efdd02e59e642ad22cbcf1819a199ade65d76d75123b011a29b807cfe988eb2153b1cb81a9f13a7b23ee5f3372a97b111d59760a3fc8e2bd06a775553f7b7ebec7fd0e054a00a9eaf46a6310393ee387698ae80d180742c42ebba50ac3a3c615a84d9f6d1077905dacfaa7324ba6f94e88df6ab6898780b2809af5e8d630bc5132d1dc8e0b741ae663a90588d92676b261994c2af2cf4747a8314fb022b0d76f74a518de290376bde67b0156c880a8208b2fd5d22992e6978aa2425865354c441eb12d8c1214afe5531b64920096257a6c439504b8e6d15c5e8abd7701df50b15b8068e43472dcff88c800bef997a76bcb9e6f120d9bc7b302d40685f30c067c68c2db4ee3ffd1d7f146baffa2a9935a07a6136a237d3808ffd06c69f40cff61573fbe36e2fade8bed56a833f86d", 0x2000, &(0x7f00000008c0)={0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, &(0x7f0000000340)={0x18}, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}) r2 = openat(0xffffffffffffff9c, &(0x7f0000000040)='./file0\x00', 0x185d42, 0x0) write$FUSE_STATFS(r2, &(0x7f0000000200)={0x60}, 0x60) syz_fuse_handle_req(r0, &(0x7f000000e3c0)="7219fa4736347448f0d1f962fdeaaa2f4e9565d9ba0765be302453af50403a86eb40b21bcbd77bf4c283a6bcd479ac2c234ae7a215c9e5764af76829b9c3d50f5f5c7b6c2390df2b003da1a236837357a9774f3870ba1f0d15b06453e65ec7356f9d694fd1d082bb765691c94cd946601128d3e84bdfac4e7a29261a1b028e5428bd784a1bf2d319d4369331b66b6ac77f295881bc717a69897708f4d9eaf8b02a6679b81fe53503714d30e10dead1b02c2c73af47ecbcc2d8afa86b152e059f632bd6f7d86f180d7775dd3dbb3928733b20d0b8e568ee0ccf0c7c94006592817140a80384112ef5a2555dff2ae77173df629e420104000076ef2353c02511a910e05b3dfeee214754b2c0a169bf94a78a503e89ee164571056973c56a9c95d4e934506292254d0402d978279d96bf35fa53a6345cf7ac3914a0d1c3f06b1cb9f0427d0c2d42ee4a81833489843975ff4d2e9d44dbfbd6082589d0baf183123cc821b981bf5ce4576655094e5c4ecfacd9608194fea94bf0da31e3610509c215a4cd490ddad06c0bb5c9a1779eda18b6ed5b9c761931ebb4f220776bfa7ba359650c38a6628dcfded61c8267d1590c8a6726a4039a2e7b83a1380197ab04e49f11ac215c4458fc92ae773ce33a3f058da0366e4ab24d2d9cba0fcea8a29491cdb25ef21efe9dc233323b07576e630ab3abb58c1570598d1c7739680247f855b8d4ec1a3997e6b2a04bc9a65c1c11fb7594504d503d4f1a79a6fc5b15c76f54681cb8acb1efe7bdd30470f2fdc95e1fb758267644d2831f51792bfd2cda17008a94cb1dcf7eb84297ce9b8bade982234b12be0b01523078483817ad574333a0e8184876d3794f44c7da1eeccea59bb261d12efa7389251b147cba04598f97d4baec8b7b4c6b799e0d7481eeb7dbb235e65f8b6f5ed6bf46b6021df25b3b73e9771269c7bf06f95debf193c2adee6ed34dd1b545a861819ae58e3b7069c6988f7c28d17676d41ceaf1d932024e70f264f5c7e5956c3bf0a677bcd59158e5c9942d4a1981893c866602d24d4185130c5b11f70be0ae8f79074baa3a2fe0426614351a256dacfaa55cfe6aa71a76ed18a882e5479c622653a98a50f435bb8b22b05ea16a4726c0555d92ef843a174fefe39088ec71911adef38ddf8005f3635bdf91f7002afa560179c1a7d62b28144c8bdfed330d3efc79ddb887f1ee4bd3fa2c342b6dfc0af07377cdfbf9b91616d8da2b3857d165e9bec14a304ee4566a3b709b9621918d99d6291deef4e1a1f04ecdcf0d92c0d84417b2b2ae4545de22f76c2528dd979ca1c40ac83a37a77794b07337a6b0aea2bbdd028275c24db33001aa9c6e8a37040546d9013a9889cdb8950169dcaa657420200dc523bd940757330709c210f26f3ca8fc5c405d4d3033fd7f8188e6909abb283b582349b83b01b766c11d2fb1433c5f57dd682da1013a4ff17c5cbf2907db7629fd376b3ec67bd1b7ba2f06a3e0bb23e658018dd76ffa90af51940fb5fa73edf117a2bd2ddcabe0bd96ef7a0b702fdc1125c9e6d873566e0f8b4684159a54e41df0fb0fd972216a045fcc086da525ae1929812d4e0b5dce70c08479be39590aed1ec9560e80856a40f7e4e408c14ca791c5bb234cadb58af2c8c20d666311b828a349ec21bcb9f1d9629b2a623e9086af804e3af32f6046437ee434dee9cd1a0d42e0e78eebab35988b7f1c8327f200a5dca16290f34fe3637bca69fec029205a55bb3ff218648c4f31f558f7d1eebe2d8146117470ba8d1a6794326fc92e835eff7a33b988a41c7492eb4fa6969419142dece6f7a7a9d404387762d813c4d744e619d896689ac9cb194dd235fe24c567033039b9afb9dfc77f9fc473dfd0629aa22d92e5bc388ebdfa6b1599f281daf0c464e34340e907f2b4a1cf289ae93628bc60f9c71ada6aa32ab1b4301040b1e387971686c68bc9eceaa6686b93f8ce396a1db7e8d92d0e2c122bcc9f7e8eb79cdca3036d5d6f69fac8e45576229f40357146c016af09951ce9c9ec08bd658a7ad0797414360844d0c795a9695fb76e3e36723d85c6298c7b6eebe03ecf5d44e7083b99fda4c38660d0e250816de5b44ad52b85b9fb2ec07ef99d5cf69797533e494a9de1e266315c5dc4b5303be9a171dcc78bf0976726b342442bcf118e384c993621ab4d3817541a4299f26274969b8aef3a9a27a9537073c2af67dd599ed87e7ea2a54efdde32a8c4b247561e318a8bc0c54111e3c1e88a909133b087cdbedb007bc318bab81046e1fbb0551bbc33130e1d1e44f74fc90fe3531265f9411490e902fa016acce6ffe9dabb0b866aaf1af3d6dd019843831bf04a4826b6df273af7f527e36adc5fc122e0c6136c80ce3e9ad0e0183e2dffe942efc5a6feb166fe581e346c1e1921626ede875ca2827b76e053e735a00da39dcf034e8f0ed197c064c048e3949a4dffe8aa1998d94b63b15e491a830f037d45b5eb11ce15777906f877336e852088400604bf084fc0f688356b5a9ad44094f88827f3c1c29821bf16baba51deaaa4977622159c2b9b7a2d80c50d5682d1a2d337c6c0e56219733dec802de90b0ccf3bddc07090feb4f394be70bb0adb4d102700bb8436144cb3d09c3535fb9efd287dbcff5b6233e6cc380eb90367352e4afc968892456f30e91ff906c4c818fc874072bb66d73c3d272e69806a94cb35e634d21fd8dfd0ee6de054ad8696e15fc222e064291988518155cdddb25f7228d7cbd6bcd347ed5c453221de10c92030e1a1b96b8aafdd266dc6f71f390ed7c143d2169feec70d850a138c661972ff8df74a053b96475e473bb4784d9a75f1c1ac78cc8728a84f762806b4cca78aec0acc629a2c0db10e4ae8c0c60e273c04a10a522d0fc12592ca9070fd4aa263dea5072aa1f286aa2f00cf94fc9b81e4de59199077b5f272e113a3b6c77e6ad0dce3a28524b934a699adef9ec2a67b5baa89056d97d35807e43dfd3e329f53223c38abd5dc31f66dd785287a5c8dcd9d2151406ca88c10e99a807f035ab9063c7e8a488c9588ea07db0bbad959932e6d1c89704af0d999c07615bca6d10fcf6873fddeaae71975f6115b792ea595be6a57c9ea52b41314b1e6472c82d091f66c18836eb8c68711ef042070545040220819e940c5f4ccd083f0f2b757c8f221a3dbbec12cacd2aa7531bda0fde96967b1b683a9e8944d624d26858233aa9f3104515182ce59929b94291eb5c2d695e4e6b7ecf30e5160d30c62744940defa7b455625047830b46b64a70e4070c3e47f42708242d62df081947cc7c13454447f167f2b59013a914eccbd44c40200e10279d45a2858703587491d13b3e816f515017b33ca0c7157dca8c8dac532aa8d392762d03034fccff3b906f8453e3517deab48c6e8b78fbd283c8515ad00c96810890d205d8052566d4d204f48a759877d3979ebc54d0b606a98746aa97a178c19abb68325de656b508a42c42c1664db915c687f47a75210764898b2803a3bd3f82c9a6280044059cc801fee406a5a14093b05a12ab3815ba40cc1182020d83386ecd8c1f2944b85b27b639f9df5aa7000481178a5894cbe66ea9ea8da50115cffa32c281c598b2dda88f16f51d7a1e75e0417988ead7adc10b033d03a41601709530799f81b171f7b79eab121ccd7dd577fd068cc4712c437dfdcb77b3981efb970d72ca32589633a9e42e54a79cea76bef83a0bcc3847ee6959405d37af73d3219a28685f71b337c6f72584bc37c4cf018cc69fad226827a22b9d58d41dab6fcbc056257606d8130094f29cc747f3338ec6cb0a6813986fc07fa10ee0b4dd4e228c27f585c2163674fd671a8dc1a6aaf56e3615802105cd827106b3e88a33179b3ada9ecef3362f910c818b6dbf4420f76b6e3ef168d2a60a88cdac79afd888125c475eb1a8d1b1b1a217ebff12fa89bf9eab76bdaaec17bc3d7dccd428a68db5812fbcb5a9d606f4c32ca2aaae107c817279be1e3e09c1cdea961c3a117c3f077ee575e82794a5f01a3ea28033381bae411c9c6a4edc294ad368bae0b363e8f0d027950619474115e655feb26d8b2f30bc159fbfcb824f863bcf7a8210eb38e22db77af0e24588a490add45b2747383883fa7feb5ab8797247db2c90fa8fc8e609b0e4028c2a817f6e97b09e18559cd7be75e6492f2bb4dee4e132ccc5681ad0d46950816b7c0d0191aaef8040062d55e5b8d8ccab4fd0c2f2a9ba3526953921126149554d10315de2055a974a081ddc27996607bad5b9e7f2676187f4304cb1d971363416cfb7881f8d48121217bc1fb118ac2f77af8b39084cbf8d67e4953527d1096d145fe4bbe8703f2321e1bc543d859a21d6a13a808ffb305657dd9336279a79f213dad1d3bcce9cc1eb520fef519180bdfde1e57211ac30a0036b96e93a6045d122aa03ef74cd480597c3787a086a8039d1ffa5fb0073faffc82d7561f34deb2862992ade9d30dce49086db8a5bb6a2529ea3408bd19441fa5c97ec68a2237c316d4270181d59e7fa0ec007b5fc9685552ecfa88f4ae65b48bd13fc9a4a78a84eef52c5a90d4988cfa74c17031ae03588d949d56641fed28f042337c78e4e084a8fd316c7e88755f209e596c5e7b21e7bcd74c26cfb4ad96832b9c3de224d1f7cdfdde65eea9f2ea98b27cf138cd3d959cc869027291e6dfcff604a3847b69e6e35be24789012da813402e9f37b3d512a62d1e255c29c68b956398ce73ecc449d58064247120b58efaa78d50e94568bd2d4c9d56a9159483caa63746c36b0432abfafa38799fd9b53aa9d2b3584b11de0bd3a56315d41a160ac1578f999c5102a0fe8f47917a200091034aef7eba15c293234671564b96aee60df9e5a6fd19ed9f744a36aca8414852278463d753e8dcb1d968d4380c84aab6df7b0d7ed819c9eac6fe59ed53998c8d3dc44a8bfda2873c13ee9016877db99bae02e44ca95d117de51fe66042659f9d63c5bcbb20e3962f2f9555e9315284071c2dba086dbb49a964ef43104abe8f1bdcf81825418963ea894accb301d5be4019608938cdd6544c5d99821c218aebe031cb62ff1107349be067127125a57f1267d33fc64c492ae4aa43fd45b1d33b2b17415a48094d40f7311fe44be73834d1ff73aae7fda9aa2a29c41f4e7e97b5a4456833574d2dfcad90ae8abd4598af3483fc243068e1e2240a1f64eb18c64c3526869a68f33f6f6db3a79746448097686a37ad68265a36ff4141813e4017b564070ceefebf08f9cbbdcc6b506fb3427e0c951809dcb1fa06511760210c8ddd26ee661c9426dbb7e9e526ae602c03960e6594e47e6ab029b1cfc0d7642456c7c20867a8a0b6ce87fbb1eedd00a5610b691b2a4fdef3e3f96b5631172b88b1f37107988c8370c30e36a4ece3f176ff49605aa69cbfb0c6775817e3daa04c8ed033028a91373b2663e9eab3fda20a497b2d14ad4447e095b032cd4de59ae784c51e6cd332bbe833050230d012b1f2475666c854247f19011b3dd5970d8d3dd1d1e74ef0ab7825934573932b37b1345d66aba8e9edaec13411578fd7388ceaeeabf0622334d7067b8710422f7b8eb2a45cb0cdf5f9872d3d14efd2d818b8fcd37b3ff5bb21f2d1e388839d97ea97d2c3e15c9b4dd05a03f2a1f4c6f6450b2925edeb50c0ee631bbbbdceacb52c343b23989f7d7e00b8e6297cb5792cb7299117949a5854129f932c444cf7401723fad23dd4bced0da5baa36dfc45e89a8541eeb432ee7f01a3c6cf94d2d42b6924b03267d2ed1516659d3aadd534fdda378b028d8724a5329a6237038b46a7fa621d052a7e35e7d63b954ca34908d1144007aae6def3d069652a76c5e0c8233617ed6c8be24c26db9f7732dc6af173e05d6f8163335ee07966087ceba488a24a0f62fc12ea47d728794e79e0a20c1648583b203e98770be9feb6f5d0f2bea1495e326a0012c3a2ea8021315f31533f752c61edd073f1283e03d46d34460eb623fff130a57ab2a0a21f9c7c0eb147bce5692f886827c4cea51d87ff9f31a250b38ba4d95a71e874f05744fddfc7ed11a045fb8858be2618e6f4f75696305c1173fca9297fffd105bd38faca2c858d797e573baf3645e0abeccdaeb36f2bc8b1380a38846cc0c80789de54c1d6e6ea344c75b18e58563909a93c41542493fbe25d063a2110f21b08239c4b8be9d24b1e0b1eb9e5c832e5de878d091c475537e6d1baa11214020842ae5c4824e11c11df4ebec8e0dd937ad9aa4c6285688157d465575db9e2bedafba02a2c80d502886343969e322f1575d90f64a0b163ca560ab853a1b64d5246bc53c99466289d3fa43c31e2f8886ce6f55dd2b327338f0266f16774b85498c815a75805efab0add1c4361d1c217f36b5e18c8b2e1efa2dd7f6d1ac695331111b17d665299572f09dbdd9e7950cabc951c4cf7d2cc0e22f6699f53e9573826b420a013310c45690874c96fd0256875baf3f88f1c824eca1c7811501b1d0bd292b105efbf4fa735210ebc62302670bd80b66aa499118f839b17698898492dd6d439c29066bd0a9ebfb30bef1ecebc69472ea8b7c98fd8e012634206f1f6b98420f383413177188d3ed26c13a8564502820ae6752cddf7b6477a04fef130b3caa8913e4787105a9c7e310bf059ea4006630c9603612f0b1caa83c5609cc8b165fc4b14a4b044fa6b9b6b4ac0fe88954022af217e3f5a46f0c075bb2a9d6edad593c295d40490912403e3c461e9d8ecb379427bb0d4f09433ac282ba55ee4ac5fcb94d866429284fcb826d7a93a052eab1dfab0345b238b15d053390f0879638e5f7f9d6e2831fe62626b950141b9cb2a4ef32475816653541f2b74baa0759f1b155d12940b2a34958702e140d98445d0a038cf8cef5f814a86d599613c8a975832710eafa278d97c943c5c6410f00854eeba2ebae6fded67af33b0b5189dcd8d6e0567a282f614655a90bb7eb6283c9a2f0dc132f5a0a2e13e76dca49815170d090be93b3603c3e1ea94efb58d4986ecd452ce7f9caba3567fdc38451269dd5c0f87a9e18f4b01573bb6a27f4665fb964384d91ec1f89a32526d26ecd2128a9e83d10c6aa2217658cf0f34840a7b0255ae3d0ff85a6c11e9f9683a211acb96c6ae196ca830aaf21d97efbec9d88ef92139daf87818a55ddb07717a79608857746770c3449a83c0caba0d841c0791e64a84bd5150955bc101c853d30ab995529340f54b29652d703071628d457db8690b792e25c476fbcd1215f51ca8d60c9556821e9e2125468e8b25637412b206472d757f69e07cb19acfe5338f46bb4917bd748ece5fc62c66f5db79a380da8112888167948325d0c031dd6be1d79bc2facf4b34fc80829dd5c4effbd90ccb08d397c474b0824cc5865ef9531c88ffba1f5a2696e2343da74963098acc5614ced2248bb83f7371672b14bb7ebd9376ffe91c8ac7c50a95da85d804be81cf4218150ca96a4739489ad7bed2d40e26b5bd45aae6ed859608b509901a0559930c5bd2fad3451dced73cc79da05d505b9189f3f66d4d7fa8bc1311f84751317802f6c97a2489ee029fe17481407638228ae266790d199256e12780c5e48db4bde2a548cbd6bba52019f9611c589c08eb2a2a17349f51956757fbf78539ed9e57ad04b8b2513352fa44b15c5fde5e737d8c1594a6ac12ed91127a13fc3b7b35d000877365b098034fc519818521503443f67a9c28e593fc9fae59664833beacba5be1939b071ac1ebdf03e75b99885d159763600509d22453fb26421b9a56b72c79080e0e155450c9312a0ef996b940e5f3e25c4129f25ac16a86cc86a476fc74bcb29a19294bfabbaa38bbc44ee16219e559251f1892a57d3c0b7cc252c28a9b703baa19fcb46d2241ac0c886d524a6bfde9b8e2827c26ac19d994035342dc96c08d20377a476c41a1564663666d3e048b8c954d4c30f391241539439074fa429d8c3715b71c11ecc2f210792e1fafcf89796cf7e54264d6cb0c17f80c1766e079234c500e97c9ad0db4d6fef7b366ffdf057920231478ed7e057b166c627a7a0e725f1864fd6382edd47cdc500f86ee66531ab35afbc1687c354af2e8ae95b1fb5f8516560a58729b7b6c7b3d506682c7f03716b9a53ce7326d8e0dbf0d9b0f1bde90d68472b3a10495f5284f2a9c737590c6839ce3b417f59720ea733a3a1b66066adda9be767f922bb7a9f1864d9836b681e54e25cc7c5880fcabc027ee2e21b8f1ea94c915f243c36a75156f4a89569096d0b0dfe9aac98b1015123aa95f39d00e439ac1f0971345ed4f8110d65296aaa9aaff4051011c272e4a21e73d801ca0993eb893693c2bfbd40c189f9baf00e3371e023cb21aa2cb832b7e87b2bb2b5c733f3c02103c1392a9b7555c73f86a6c19b99e8e4086c11ead1d50292c69f6a97f9da9111717cff287bb8ca585055d75ec6c32f65444a96e99606905cc6894af1ff06f001bdb62dd52a38ef199bfdb12932567eb72b06d9301a568dca814877fa388490c9f81988ecd6d6b338a2724b0853ce87104c61c179231a484fb9dfae9f5761ba0337930761d413aa87d3096032e4f71a55e25d9f873eb689d40a879ca5188001011ac803fdc95331d3d859182bdfbbcb81c101886de05cbcd9cc392659eac2500a81ad4d785a7cf531f9d428f123836f5835a1edfcb92c67e84920530c4d2f6f9fbfc39d8eb7d2c840122da42bfb2d15d11a647a7bd27cea23a0bebaafd34d36f5ef4c7ae53f17dc9f2b0a5e33ef5bb63ae2a15a795fcfa31f333858aa494010acfe2dc0781138b8e2db7f58bf7cbce9da33b2c0836183087e72292948ba38943e31637bae8c77f18d455e100a70433d3d7e7e779d65fbbf5d112e32863a2bd31997f644491f858cfdb881900a0c69dc1f91e8714a43ad0e6ad999a84c8e93a4bf3f29a98f4e3402a7262f0159c5072dd09b0af7b6806f0d05a788f1c19855aca18f9a14674b03ccf200799b1e00b2e3cf7431a0f4c9ca3ce2d58642258416e705920a60eae2d306841125358e83b8fd9179eb2f4c1f8e10a6f86a3ac73bbf7ac751685d689bd181316bb49861512f7c375537c3683aca51ab222dacc2c537be6505469b21dd396182c919b817bad13bc1a2880d7c4662b27292b80b426d9b7acfbc26f03f7170cd18489de2e35a3d4530ceb090b52a2fbc80f4a578fcaaf5f38d9ce3601144eb7cb36e806c9b38de03c5e86e2bae5674f32d400b1553fe407440fea7990312bbc2eed3b7ffde10130fdb85a9d1262e2228438d231999e49d8b4d8c8100ecf31df55ec0b0f86f1fae08e8f9d6034f85ee80d9307110f060c518eb86b8e021ef7f7898f368b23418170cd7a868ca3ebdd8de4e3a7873c392917cebd90d1e77cb8cf2ef65209e95e41b372377538394052b12b053cfb49cf04dcc3524815d036fba1fce46155d24f0ff9c1f25b58bc8f859b0f1622096ff69359cbb6cae2a044a597c8e90c97f669db48b7e9a133dcbef63a2ea1adbcd7eeff057e94ba4bc46bc193ed5cce3a0719a23b95bd95916489b9a2012c9cd04f46c3f5887e27fceaea8c16429b0c70df2176f428e3f0f2d7229303fd86fd3f31253436ac633141e279e3f04bfb47b66e25920f8d2c5daf6273c62391e30cffe094611f25ed714f3b2e5d28656ce77bef05d1472600b8c6787e9f9a2a7a3ec4a5c75749fc7876bd637507b81439df28759fe56461daedc89c735eefc5feb3094cdfca1e9c44ad696cfda82703d6ea11ec44a576214d9f7dc891d6d2d3998da665d10e2c1c807d248df651989a41e1e57402c37ed626cbfbd7ca21a35757ae7a4e739583aafec17b60554066a63d521a4c8906e0f56f85f73b0466fed9365966b89c778975e751e3453017de75bd7ac55a89e3c1fe5f9e29d16818344ee40943518cef2cf8add1ab4cad10cfb5f9ef1224cc7c46a12d99d91fc5b7b86abd825dc548d394c8bffc1d8372a40fb011421767b1fcf99dd78a5a6d632e09c902a74278de288a279afee23940a2fbc7663619eae9a0b4c221b6819a93be27d7c4a5c14a2606e695decbefaf7e4852280ab69c4a87823cb04caa4bbd15ca479c1b7eef13ef3016901e08da041b7040f0f5fc6b64eaf12c00bec8e63b9e974671dc8bc3d9fd5374a800a28b88d718c8cdb4281d44c506068a048e112b9e0658a4ebd099500205e276cdb05b3162ed6324c8242901da16806137e2a523e8927a90be0b10ab1e708299c49e7c4944eec5408ca990dcf0d5b7dc2713571f407ae6e35181cd0d705a1abda0bdd82f5b3b1419b039db926086b11e54068d3bd2481fe5d8025e09b72548fd6c10391ec45c7fa2765578c6a0918b7d6af2d8dc79acd2b05ecd190667b77a8d57234fc62ff61b66983daf5c1a19bd47bc2b626cf2e3a3276436855faede2832e91ea16b26a900c3e43584e2c01b2ec986d0a212428146d9254ae7c27fbe2e9fe18d8dc5a0061542e4d1ec14a6febd43eecd6a4ecb3f0223fdf5dcffc509161a720d041598c6fcb359577bc8ab447a7561c71b0a287242430b78cde49c0e037e01c2f28633571a9284134539356766bc63964ccf9051b361d7d17008cbf9b2c40ea04fa3cb0f96517acff755509592d03841660d2016c25ecd330e62ea1df2385a4ba04e71d91428c437f5cfd1ee3040899b94a351ff936bc72b874f28e330afe0cf66e37c39ef5c38f34fe70f981bb883634b3e84c336b5fbdc0d153e2a0673ce4d3709f35822902a2428a3ea29b6d92b81f4b7de6345ff70dc8e3b4c47126b186878107cc2999c16765b52dcf48056ccc23d6623df14be4542facdb654e3edc5a35315b65132571b3db199be785b062a3cfbf0f3aacf18ea274aca3c30265741d006abf0c706695a16dfc5a079cb38d0f3a897d3c09ec1581aa1a1ce91da5840507699537b9a4df9a8c25566d8bf4f294d8007517af43610732734694cf884c53e9b6840d042a85d42355bf9f8fa718df4dbed3a118172dc3da9f4a8c53d9272c4c93e26e8e47686ea77d469f0a8f7c76b773f54ca7dfff85e87f8d5b464fef0e4cdf791b4235b8ff02c6266a845679286f34f76f7c9ad67489f6e589231df5600ac902c4903c25e8cb9fdebf6062d87266d7883d93b7411f73298fd04e6569704b150f3f37df6384b6feec2fd656671a6a44b589ba7729f7580127825f2ec6605e002c3a2818a13bd089b5e42d14ee09e7fcdc288019125344319513906b32979032ae70e116855998365e4fa77e282a43cf98f93ef6aa0e0768ea4c8acb556725fcf41d48383f6ddfd62bdfc5b6028e362b91b9954c098e16a42139478a0ddb612210d67bdd808fd88cd33268fe652308c66a742f4409d3a42fb6510136c7f910a73b437c4daca57065538223a9e5a8dcef1b0682befef54cf13e36d6faab9b9f2aa976f5c01133d97bd5f3b71c7943db45e494416fb2d00f8f85b196d5307e22abe5e0d48447d5f9df003ea626921bc0dcca7eea8d1f56defa31bdd2f61792774de51970200ab06c703862d446ff22ca7024f865f4421c09b97d2f2ad4636d88a208448f8e065ee5c8fab93dd765000", 0x2000, &(0x7f0000000a00)={0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, &(0x7f0000000300)={0x18, 0x0, 0x0, {0x2}}, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}) syz_fuse_handle_req(r0, &(0x7f000000a380)="1889e1625e95eb60b81451ac8e88770e9c6915888c0a4dd7088b7cc0abcc77d43121799253fd56de16818e5c727e4f6254cc09a6fe59299068c07cf463bc0c363b50e42870f35f18505a8068e037f6a599bde2bf99e6fc03d67e952593f436717379e29cd556b1e1fa8f58071809763a2114725d528c1bff3ed55ff1e6f9496bc6692322cde7054e2785f74e47072e9871a95d107c054d33f1630edba16c59ee24d0430593cc918566799d74c5183f601be4fb2b227e4f0684a7044dfea1d724fd40c3ebeaa644e52c3139b6ac925775a27edfc71a7d51c2901e5173a08ddd4332b2ad90e730d586e5bd54600b9c2320d22c269c12926826ca32542576be6b7f4caa556a48223313961b02f836ff4f6b926acfd13e374047fc1aa59538e0832ddb7b9efd2b53a1afc39d8c345deb89581c4e6e86f5e1842a9108ff1f0ca26a896c596cab32a366fdb026881894fd3f1709ea6155b0d809755448e46b16edd342dea12c361e8df41d35ad8bc5b61b0fb0b53aeae91a9106f9644e9744ef9bec69f306d475c13af47bf6acdc0ef34722edcaec82d1bc7c4f350b161534c69db182d1388dbe14f013234c2ea1e95ce6f65c4ea8bea4e36da6118b12f672e85805265ecfd4b142143de8ec19aac8225730975755c311df9d0f3b80020576fe50e1f7b5277c7da314c044150ac097fa7198594f6142e84dd958a302ec69c1ba51b5680eb95a38cd87cbf6a75db8ec3912cce3521cbdc956c39f44547d42e7ccb38d5bad937caa379dfca870bb7e5b9c6176e714c6895b95c2a7c8368e76a10e275849f242ccd2e49fc02ed0f060723bf37ad7211857fa4bda8723f696c5d2961b1c57a1eb4dbfea9b39c289a6f573f38efc70acf329b9406c64fca8b16d37922eef41d12fcd3de771701d7bf2ab09c33efd4135fdacd3ceebca5c3c73a03fcb007e5d3daf14f3c51c94a0908b7ff56bbc434a3fb4f727a410f3e9a2e15434dd92586ad5314593fb944fa1a0e3190f7c5e92273ad02c273e5e137bbe4b0b90c26cc2f7007b7791f8e5ec37c178504c7e2de852a01337f883f148b2a824e66103545fbd2a9366d6b4de5ebe1d9f602edaf9b2d04c09e47cb71c8d4f9eababb68e1036c9231507a8709ba8cb758d34ee7924282fda8d5a972888608cc7c12e1ee97aa4a99ac257708b6a498d868aef823d31472b7618dfdf644dc58a602515d630a772c68276829f1d7fed1e3ef98ffbd2e686afc171bc8cf72be235dc2f3b2d5376bbd7eb4bf0540de21c289a35e5ca221b860c8f40b6c31f6b9c02257b12b8ac2dc86a9aa1a8df7735e87a83c48c353c0a1787489f04c4cbce92e9e974f796e33fff22eb6cea16b4992e29962da70a50ec420ea5bf1a6025018eb4f0372809aa69c7862d0e45ee6132da0a279a59fed7e45a8de3834c340d481bf74dd7ac16ea2fafba8a2ed14be9961494e04a0d4248fab0ae65e83849445bf0ead114124986e01f11a021bb2791f4057a684874cd0ebfa88e1ee726e7467fd729cd7a04323f5a1bde56560afeace8cd76978758298f82d3f40addaaa44ae30e4b79ef4ca9d4f29a55e4d151ac662f446ce819124fe8fd8bc5e24040d963bcc3429c80e05bae5f4134423e1cf329f4d352f05a8bd88fca5ed09e74a68617b5ab52b710d6f4f27a65784f5b129a62df9a6df285ee4eab2605e983f19bf4bafe58df11489722505962b972965fee5f04901c8fdee7eb24dfafac1515262b831995d7db03643939402d143d72fd02d1961e0aa69c41eb48a7aafc84dae214d92b8f167dc8da25fe5542973cf8771151a2e9ab83cdcd18d32e79ee6e8255765cdd80b676357eead4a06485dfaa7c33de93fd90cdeb238fa719075ae1cd48f985a56fc3c574d93639d0b6a90996791fcd32b698a11ec7825f28adbbf18e4f8eeff59a759a7de85c7def3ffe8770b35f82a8a22bebda1e26a386c3e65fc94e08c9f47ee21893cfa05f1fc7afdaeae9b0750b8739d0d06f5a7fd78e1bc19cd6447c89809a141f7975523373f993f5e531f0614231dda69313253aa5db912e3a76e8276afb93085c1ff61eed88600691b873a71c97d9a0446a08d608242b2e225619423a6c4ccb0b3b61e0b79bf7066a330e9f412f0cc1ce8755bf4cbd54f3361c6d6d984485b954ee191012459e2cba5949c2a613db0afd172f16dd8b3740bc42dfe38bd2207a63b057d350655b5998090f8b0616e41e40cfd716ae0a45fa0aa1346d47edc8f6f4cdf86fa0356827bbaa2c5faf975e1f72b01b945e9a2c55cb8768e92a046f4e34b1b20fe237e9c2d9382504897bc0a7bf30562d9da4e6bfbaf7bb7292743ffe23a507c29864071af0dffdce6ee72b8c61dd5f08ade69700d22f2f4c3555b4d403afb59ab5e472cc9a832c490018216d4808f726287ed73d992f15feacbb212a4f6706bf908aace2dba1a62c945214a557451c81e3cfc9a0dff47537e9b817bafbf3c9490a4a6347224c4aec952ac7d7a49b05c0b155109d8c81e8b9f2f840e2b5c001ba389c18668e98fc07db8bca730700151efa95373a207457a2a2b75c732c4d7092d04f21962e1c4770ff1bb108658890077f657a81841b22a562e11a4858790f052aeb7c43fcdc375277ee8a0ae13d75a36b240f4b3c95d6bc762d5f394471065e2c9a92a3671c295195add13c6608df2cfd51b93f393615a5baffb03e9294d1bab37d4f62f2998bb803605f628dcabf0e1c7a31501476856d92345b04c39aae16b1b77c10209f61e6e5d7737b5763d76256a673c15a8a78c7bf9a950ac9c6f73624afef8a9d1cd8b82a98963f51f2eecaa6ef53faeba495240eace5e445b764e331beb9b2505400fd70ba8987147aca5865cce73a8b9ed6cb87aa4a404cf6ce78ba444af6cf7de32bebcf9fd3f6dbfaa796c9cb53dd76c066036e932692fd1f02a75b9bc8f3941c74397b58a0dd342478b6fb7e44ed485f82dc4be7bc43c76947a2776ce5b592bb64d56fa3e8cfad395bc27edfb35f6a4ad097fca7dff9fb4d88e80a51c9a486577ccf51375d507487e4ea63da4fe647ffb524b52834edbedb309259aa524848c11cbb9e1df00e69aa7fc4f9785a042706d3a6cc565430863a5f4385a1edfa40d63405f053ceb5df2f0db0de0c479888898cea5525a82d0972ba9940694df97f8e01427f41553b1ff495db0b6fa982588e6b2c6996b9e458b5862eae0a44dae872040c3a3946c2a5bf12c9c8bf8be180a13552248e8d37c915803dd79882bdb8e8d6e3a8179248441df7f79182e426e47b8fe60dfaef3afd9b8a3142aba6f583a355b81714ea6bae7f03d170fb7bbc68cb062d51355393a77e2ec31a43a1903835f4aca4238b5848881a9db314f8679e4cad5d155158a9d16871f8dbe56e4c5c72255b6170afdf0e1a471e1f44723efc28f9342bc464aac00658340cfa096c2eb7ffd1d5bd8ebd7dc65b960dda2e6e6bed23fed5e7766a1d6fd56b413d74363c7a7dc130d63891a529a58453d1de82d0fc4c62642a973fbc3d5ba743817464c2d91e3abb918bb00d36700b537fa2830f244901f3bed4e90cdaa8132b6e62420e1092cb8bcc2484a366d2005ffe1eba5f560538673efde171bb71c946d9df2b4366860cc6a0e5f00e2b6b26b098f20c3680a77079b2e059407a41a6e61c1f00fe9ca6287c4d4be228c7417a853d974a8aa8b1029efb5aa1d092b0c18b224cd0bd653cc0b7d94ace5effe3fbaa54cf3f6603bc9ef7e4708127c1435fe7a9e3754ac9387dfce94833a378fe3bc32fc2e50cc27594ef8702adff11c1a2b9e838065a7162758ccca298ce39bd54b250e852cbb0934bb892005626c569d202f290c12ad0c392a1beb723a37931544af59ddf800c117a690fcf33de2d11b0d61d7564d94dcb9e9ac17a0cc7a028be819268bb6477fdd462f07f4a8c3dc8c9b6a6c8eb452ce0e81fe4cc3e948b9fa28b85728949e1b75e22e0fcaabe03aa58a24cf95f91945bf68b36f3dc107e6c4fd68e7167b4cf50db316fcdef62c9c5ab90fd92729b37c327b2cfedff4dd6564c16909f788f69c80fbe3632a397aff5f085c91780bd8eb4eb3be5beff61e35b79811704cd71f2b8614e441013e4de3cba932c1188283ce765b68a2db49f1eb8d5e2cccfc8f1dab04677eb2445cf2eaa41e769244588627b8da8daf3b12d03e3329e35a5a0d2609fb4aae05f4916fdfcd79753e02087c05d386e43ea49df41621ce6fb592f0ed72dd8e4fa67898b14710d39b941f951a66872ea18efde4e264b31f5485b728cd381f762fe6c3a121fd434b98bff97726349d291f1adfd10e7d3d5a4e41533d9692bb6cf954ee9ad69f6e0df00bbae03c7a2e7355a71a2d36488fd2980cec95bddf7c0202375b01a6b25afd14bf23341d3090c6dbd1fda26d3d5192a3381a197e439b6e686b9fadaf5e981ba78d3ad89213554dbe2bad60a6aaf55eea48477d6c2c71c2a39c62fbbd3ada25360424733f8ff7e0134341f3f4f05ed5286394708d0ac611896e36e2fe0c49ef102cccd6597022d93c2cd4d0d10a92f7e7eb4afee39641989027cc343dec56e54eb0562060e20568ef4afbe48faf8a62b67934724445f541cdfc5110a22a14ac5ca70a3f8475429c22d2d0a018a50343cfb9e4ebcc63a58faedc6efef0fc905192d4fb5e3ef480ec304973b73cf738785a1ddca4706af01649247d4c279b9d6c735a63f049cfccc7487b9f162dfbd41d57cdf3cbb14410cf7058e50cfe5145f1a9fe4a816267c91829a2f3c50432aa7423a0656ab3fa76cfcec07ac18ee9c8bc0f21fc6ce77cc599ab2c44d85799774062d011c8f40805735d88c79d9b5c252a1e803150b32b852521e15d7ad27228430c4c8f71784d331edcf2497e905fb95eae5f8d47fcbf75f3105963044852ddb2e917a5b372da7c163c66665fc03012ff896fe713ea225a0fe4702dda79f57468558b87755be6f6e9b9f08939c85b48cd33defbb830ca915df4a93642fc3f783169492627ea98dcc15e673fc39accb379d604126b03754e232ed9ef3f2d241683bbece211583a4f3ee224dae3970a70bda65c1658aa53e1e454fdb26162595a0d12164b5163175e0c6db104506d4ecf7fa177530e224862c25e7e3dc771b1709a77611717b981dde90eed5425c2477e33241d179baf412395daae91893ecc44170d526f82ff92d9ceee89c72b77c5a7675c2db04e33128b5b1a67a60dd62b3ecd270b15ef302f2d976c8ce3042d2d7f4cf22f80acb219041ee0da94a6abe1e25c96b8790b9b982dde5eaff70262e06e853013f047c6c8283a31e9c71cfac58efd37d0ed53405bf50d9c576bdb05441aaa7c8a0ec70543d71a3d0be47e3a17207120c84f88b306dc1abc2b8c245f462e985e362f7fa80d6218fe234810de3db4ab551102f5f1551dde5aeb1e2d2b74196534120d43035da32e79ee096a83217d2726eace6a9e9f95bfd0b60e649b7705a6a42c55cfc6b5b380ef4e612cf560828f3986531f71c7c8119ebd6d3ec40213037f72bf561c4a6e0e327294912d0acfc84100c187f6af677cba57fac914dc28c7617142a952bc6a123a8daff5275bd30f354fe9719243e20ba40f74a46f2c1ce8bb719c8856f947473a5041f736d7a1a2ed679a44a728e8d2ef6bac2390749de18e831550785121d90aa3885eabda30d15541ece44fcc3b75b3097762792fefad7d7921907ed57116eef9c23e5d3d8726f6fc0b87044852b40c767a74cde375cec0be104c3838f9ec742f3fd4873cf917b003e9a25a1413ae7f54830840e12d4e0b4c34ed285b55024e78c588129fdc7ef0cb87593a0a475d1f0327d1b5cbeea0f612a30f253fed8a591708faa403a87effda543068a37701e82f11fbe9b8ea58934be16694bffaf6eb7dfc8a62ea85cef0519407805b7950331d563b9b9db8762467596bdbe883bc6a7cc95d227ed94addacc2b5c0b0c8c7c34ede1d33e6cb8476985e0bba05063079e1d6e665dfc69449d299560a34e246348e76144eb50ac5cff4f34985cabec37180e4daefe48b9b43fe1604e352201062c1def02443418cff15901006db2755ed69175d8da7ed16b8936861cfac6cdda3d20dff6bcc7a895687a8bd901857438ea12d2656b0401c8739b9abd46607589c7b3192b4f5b2293ba04bb06a825e558836717dddcfee651ef89f85392d58f169ba43dacc3d4a4908ff828cad01147459037161e8d64d1f7945ab6606014aa9b5d53b5830c2ac06a52f59fc3dcacc6535303ff029ae543f79a641e2bba29e45e1f99b17fe7c4fc9d10d94a7552379f33e4c87e95d08b4ef50f2c1f80b7198547268d154c428158d67237c997b7431a816246bd37db676051ac9b7cfd38216a4edd7109af878d33606f928a590784324c8d91f931f0e7d4bd6818ce9e8ed47791b7c5a09b718abed0c96a778c14d746a9e02c6f64bf74276cce8972263e8d6cb65620d7679aa80a898452bbf6b16e3a73de5c934d70d7f67e0e0cc4fe678eb36bf2ac4cd9af4a1de9fac9a320cf63f120c14d9dd6ce5c7177b18949b7ca608116f0f98eaadcd7d6bde40891e5aba4447eb3be8a10853543145047696c50fb510fad3884f456ea51dcd9981d39f0fedced8e5b9c28529da5c0a9ec1b41051693bc9b83870e156ec6f8bbe837a4e00b4eccea781bdb7dafb30856866cea19c8098f6661e3db53bb9bb01f401e727f90be17b7b6375687ca71567bb53d54cf28629c73820558c581f1940fc204c8fde88f212ea6183858e37d387aaf0b8f109c876322f04ab20d774a1a32ffd68d26ca9a1e5e4c97c7880537989df5c78298a1547a97c100add178bb90f1af451277a1940bd3c487346303eca7b219b25e44d6d2825b40a07e9d1d33f5cd43a420aa53c6cc7a405a4a2269fe5dcb5a17d943d0691e3db04fe20ae62c63d0b389b66940be57a765d26929ad4260f36a258bac797e819e92b546d82dcaab8edc216af2c4343b21809ef0f957b2c5787355649a6588a4a1a786eb84753160c464f3c466ea6f1724b360640cfbbfb581b33cc97a7021e9712824deb0223f43017f503dfc610d99c77c80713f24b22f0ad6a17e872a2c1c6a6d3a44814734c34b1b791900967bb5a072859f3e09798bf92eeebff2e246afbbe02600fc55818d12c4255ec7b0d06c2ba0851b3e5b6c594651808ea6ac11c1ac7399da49e1dcaacf668c7fc5b323b7c155f9dc1531c9682b6eac7d33e1f0727cdd740ec297645c3a3d72b9e376225f145471906671da9c0e9ce133f522e57d911adbcbd4e039c8c742e72cb0897a494aac150f563253faec42dac843d6f615787ecc6c113337c6b2af60d7f9e6ed5cde32e0251eceabd9b852db89f9a63027e86e594d3a1741ac8e1b9425c78b8549f13e7e5547f6ece2e90d1bbd24e7015f11b35d3c3be3b9a3be1299e86dbeeed4a8fb39a914f436908b6aeca0384d70bbd14b71d65b90018bc8280f917d6317ba7807968de22608ddb0675c7e309352173827819b0d0401347331d2ceca40ae3027d6bba3afb05dd7137faf3f26d13f36ce0f7bd9d6da0b8c9a65c4ff1e65c3c978e4ca20a4ba3758600cba5ba727509639c6aebf5d06c6d92b3037aa65c3031f189415cdf23fcfde0c46cc83566bda454f5e077e07b18c0d9ce42908fe904043ca28e164d10c79d6bd8fc47fcd0404120b4b5ae78712c245aa3155526ad7e1cadaffb33070fedbeadf640ea5adcb69489c7eb17d4352c4781d5c7385ddc072aa6842b87bb639740c07a5f4d7f630aac3fa4021893c7459bc9673c385fee33fa8c4e41c87ea7d43ad0ee39d4561eb408d675d4211d7dfa0c46cacd5de656d89923b6f3b6a2e0e5579ff1e8caaf70508b962fef21a021387cd41a32bc3699fab77ca998c8e96cdb983e7affa4d3fec291f594cb56cc5eff45f5664bcaba0346b06b24e80bbfd890a16623be44b294a822e36b2294b68d97e8273d926bbf223dcf009bf66ecc8d791c00819ef298cac73bfff3f95122273cde2a331a4943326d706e6d57a46da740bd35f1c73cfb51052edb763032b45adb7483d490e8932f1bbc56704276f19517aedb357af89345b4a5ea84e0e75c7d45a1627521ef11cd02b7d9d0e0e18ef1deed315ff9068a8c23e04c4440e8d5cf0013c4feed2a561707af5700f4f77bb8f6e46ff703c075cf4f8b72791502dbb2243f55c6fbb972c4e481ec0478260e082b858174736cf859594720095bd76816fbbe494944353357d4ff9f8e0543911eff671db5d604fab6affbc2a28d6c771507177968098670b2ec0d11b92f6ca60fc7f7fca4305f4f911ef3c522325dc4cff15d23e72cc61af4105fa35cc3f0b7170b72ee9d058564f443a15188b5a73f0ca0b05f1dbe8ba6a3add9b95bbe244c3804be0615271ca66735ca51561af5120e500a538231c913579d9cad28184a7e67d051755f8a5b5b18287f58c15c38576e02ba51dea01154d377a62f3bd1c00b597b3675cf4d5745cf6157bdba58c16c97b2b8bb83e078ef8e906082ca6a8df9ad5c6becb136ea0a965828540caf7d7897dd4197755c3a7df3ebfd2b7dac1c12c960c235a6a1468639597e59c71c4c5b3a5fbd5b48acd138ff83ffcb4b91173aff57cc289896c3984e040493a196a90ae6aab8ce59fe35e33ea13c3a146b0c144b5fd7f5b34c6f9534cbb272e5da3cda900c0eb2c9f226a6183a32bac8e8e53eaa27815f1ca1cc467b7fa67f827e7421ef93df9d11493c2f6fabc05aea419f140a94ef3b4eb2827a6935a36e74b27a833b7dfa2451dfd12ffd1790ff4961dadda2bfb63e01d6e46dcb7a7107cfbccec8064ff78f17bb397d98d7391b5f2018c5c07a033be0d148dc1c0f779a188d03e74827957980088099a34fdfb5156eb678ad44f8aa72b0ebd9e4ad6be6b2fd1ee8c521e0408d99da191652bea8a673a1029036b887027def702299c6721c550889687ac3375795b30388f1234f3ab8ab4e3a17910d445f276d6cdfc0440c3476d63b032cbb15c2ecdaafed5b0598a90251f1db1abfd22a640532ba13b55f2746be388ab59ee16cbf2489b6a7c6eb1be844f6158d733636fa700f6f5a4c0690410c3a5860da9341e5241b7b1f3484c61f831156b185732643e2df5b7e62e856b8b41b121e4734d533455666575c8dd1587a5b237a9e54a12f623ef0ecc33197269acf0fd3ad5ac7f1e88e2b1ddddbc073e5d3893e9494ad203dc14a28b1c0f66f257670c920ea6c77ec79e5b8d3484cd93bfbf63dba90acbef7cf7d9135d00a70c4c8b7988aec4bd43367814a93ff0d7b76b916973fdad8f4e24195bb8004eecb1f054a98973713c2b2f7c8c90253dc505204aee08274bedb8274e0aedd980c253300e2d314fdcd3eb5fdcd629aae9a2e2432a6ffddf20fcd8332d84157b50611aa3f4362900c1c9857e13fe581616b3a002efac06c4027e2f87e08107ee3377712a4b370c620176ff9f40f2a95dd2ddb4063f681097166ea2328100eb0cb3dd0f63dda250b73a91972840b9582cde47b0403f317c183946a780118e94d36cabbe87659e644907b57479c71aba5bc26c5d0c2405ee04f171e6d6834aaa05c5fe25379b3165fedc0cc9fd981a512f3601a79ca55ac17e36ce6d1222d443d85b2d004b9e61a8f9a71dcac0f606cda97bad823748ee5aa51d0a9afade8891a40cdc581c6b0a5befb04568dc97aa10aa02db49b89187689687fefdec26f52e18f57c398799a18709b05488ec244a5b44c5e74c287f99d55c5d997235359b41587cd82f34612f77d67dc18d3d5f170f7db6618a1d0e7ca650deb8cbae1b7a1f1e669f4927ae23217f2033b7be991475b378e75a13a35c0c5155774ccc9b44336da53f4165380b1a6cc5e318a0073259759cd8fc2c1588a0725e7be5c3ca7c0e4aa14a2a39ec991f93e42b8f43eb8dfc4691f0fb20df3dd2c7b8afb56a6e6bdb2460d230039232af232244b29e877693f767bd303ba3b38898631b39beb57f48d79bc14359bd89ce0ed26a23d478979c21eee3d2b3834847f20c9e40bacec23ae71ce559723582c407243b927cabbb664eab4a3a90b05553a5c2b3227c7f22c72011f432b1c523950f5e06c69c48b32ab2e5893bf9ea754b91d49fd080c638a75bebd234d7a10747991aa0d0eb4adfda31303344c19ed52c2565cce5a69917175d696751dec797ef178c0ae8473aab9f5ce36cbf9316b74a6c6dd85a05c887eef575cb176940d4abe82540d729a2c4ef1d1087826bd435eb3a689e1745251caeaad7b67bf1623e88613ce3f9f8c1239225fe414c1ae5f25d221214b26fc4f37b30bd031b4658eca0d43eb74ef65d18c9ad0214d8706ba2c9c592c476349e728246d476210dddf36bc329fa447a780eac271e4b02828a3aa2085579ea34620d6b08ccad6b3852e7914fa8801807d4891efc547af17e782487b6780b1115c656c02b4dd182d5c1155430b28bb1bb96d052fd21b890d70c87a1ccddcb18e8708b8c86e0e6d4da5b936ef3ae9f5fc68793e223086e0a7dc6fbad64a4b49aae74dc83e60e8850b0cbf9c5dd6bcea97d51aac21939b320e3662f2e77158af60e3d68c395d91df459359dc0fbc0f5c47f5024cbb4ddc2f496021531088298760dc4e41d6bf63fbce49b4b0c69fcf5db765d3499640b61d4896d098e671a07911473e041f8c54769fb3d07717d55c9d24c8439a6f4171816bea2643ef54c8a84ea3b91866eed4379107b860e8ea9aa657e66f8e81e1ed1a336957e66c93e0fbd0ff687584d714985ee1baacd8633e5bcd6c15f53fdf9c7cd4a7624af4afe5eeb8773b0ae7ece847d83b02848aafa2aa9988c594d27e97d0d25884aaeb74cec4a673adfa8edbe65114e60da95733600a090800dac7a69b2995722a2867a91ef592e89c17afe0862e040008a02d19f36304669da2a2f31481900051f9f87918d4b289f18cad30e6b64e606fb3f8c7ddc263ec2671ba91e1416dece812f959a91758ab8f780b786129a959e49ae4ba95283c0ec9f164d9f3b005ab9c7717136e19b758e749203cc5c409c215d201b72024fccc0133d256584db7fb28874de56b0cf9bd3732f1cc02f8157934e4d643523b427af2aaf96f66faf4e4667c0772dc0f08a9b15a2bfd59ac206751edfa2ad37077f3288ad578ebd636be079cce09ae65481c93d8f1100140e263716f9ed024d54489f3c5eb092a7f4e92679edda6f715e480b0ea0229e0b8aea19f40dd8b29066c275e607c639c0e79b8902e3ebed2134029eeb157927d4ebec3fb4f22efba9f72eb7a7bdce79f9e0596587417addb14cf79d2a057801b31dda16594f52134248e2f8f216ec8b9e42706da8c81c5895c497ca4eedfb90f2ee71723d74dd34fa57fc1e9a1b8825918f60914bad52ff4400f79d6f8625d6efebcc547ea4dc40df5fed1f508ecbb7ed40a6cc50d436a668118c3584a8164259de111c738335d41a301fbf9e270ddeb4c6846cc457cffcab30780ccc96a5d5b2534a9952d1bd6c09374ebf357aad21a924300f0386f9a93e4c7a5f7481729ff8b8a17251f622aa6d32d9bb7031a72916d2b18a760b457887378fda25ab4bf40cb8706f3508", 0x2000, &(0x7f0000001340)={&(0x7f0000000400)={0x50}, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}) 19:43:20 executing program 1: r0 = socket$inet_udplite(0x2, 0x2, 0x88) socketpair$unix(0x1, 0x0, 0x0, 0x0) getpeername(r0, &(0x7f0000000080)=@pppol2tpv3={0x18, 0x1, {0x0, 0xffffffffffffffff, {0x2, 0x0, @loopback}}}, &(0x7f0000000140)=0x80) connect$unix(r1, &(0x7f00000003c0)=@abs, 0x6e) clone(0x20002100, 0x0, 0xfffffffffffffffe, 0x0, 0xffffffffffffffff) perf_event_open(&(0x7f0000000500)={0x1, 0x70, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) sendto$unix(0xffffffffffffffff, &(0x7f0000000280)="c13045b29ae9d769a494822c309d8d2f75ec37d79b3e984253994d2f4d2dd4e43384af979469722a3d0afe5850ded02196dfa2a56b556ad0b2791993356b81e7cfd2d69c097409bfe6a05e56752278931d996a7b9ab80b34e492220aaae8584e3652b8c32652f371bd379f03b89250d0214a7696cf71fc687495378cd67fcfc7be5e19c1c0d7", 0x86, 0x20048001, &(0x7f0000000340)=@file={0x1, './file0\x00'}, 0x6e) accept4$unix(r1, &(0x7f0000000440), &(0x7f00000004c0)=0x6e, 0x80800) fcntl$setstatus(0xffffffffffffffff, 0x4, 0x0) bpf$PROG_LOAD(0x5, &(0x7f00000054c0)={0xe, 0x16, &(0x7f00000009c0)=ANY=[@ANYBLOB="61124c00000000006113500000000000bf2000000000000007000000080000003d0301000000000095000000000000006926000000000000bf67000000000000150600000fff07003506000043fe0000070600000ee60000bf050000000000001f650000000000006507000002000000270700004c0000001f75000000000000bf5400000000000007040000f0fff8ffad430100000000009500000000000000050000000000000095000000000000001c0a7900009d3c2792432a4fa650c512aee994a5642cb064ecd5615f3196e3359aceb7556e7e60bd5d2e4b5992de991371274fdff6e79fc722f15659a7c85615c1b88bc894123cfe2314e887c1677fbefd35893d883a2c559b7a34db461b1974af360eace66cec40d92706d0bbcc5bf6fec345ae9606c3c1a348f9b395592c1018e5e4b41b13000c94df1f2db24c67d4c7ba9ec035883e2791a9e9dff3e8bfc7d1be000000820102b1900000000000000000387a601e3a3412086dee84efd375f0645f3301f55d3b9efdfbed9b430bcf0418e100bdff1c8bcfc0c229874bc3d2418bab997c8bef9aa55841caa572ddff9220c67c9e17bee524c3dc747445763ecb0a7f2cd12bc34b0fc0271124cfb5279195f701000000f77c71294bbfd85878726c49eb89085967722da6cb884d1afe82f7f722e38397996271700241094d272dd8b754b2dd36d44f92991a7817450bc7921dd372e621dd447b86e7ffd1bdc198deb495cac0995ca3ef6c1affb693ae366b0f11db6ee4830db4713e5ce6cac6a27e29f171b8e9f172c3db24558d77b8bf18be45c50b3fc005fa7b134dfc948f6015e0389d7f34cb9c02cf517c8ed7a9b6159c1446ef1c2ccff2bde95aa860ed9b836d6b8fcab7663d9bd8415e6f90fdb007b8f3e08de3a638c4fdb8562eb85173720c1df1147c9f5013c82fc98604bd70cd56609a6b739437e3010000d9cf81bcb1d262845762f6b0a284cc463b42492bab0f7b25895cc3ba8bf0b5e0fc018463d03a73fa85429725545128b0e9b550a13d0dd35092250bbce4f618cad2375a34c7f15c3096f300004468cf1aba4a6f21ed0eb3681c696320d3251b7eab79ad8b126500419e25a94ce13a7a96decb79c90b8df10b1e364cf97eaa49fd22942a0fad0d814f230f954eec84ebb7e20594e2e6f2371dda9fb3977f33c516aadc9bc51f23b12f761c4a0335cce4fbe7baafc8d0a6c6d8d0ebc20400000000000000c83cada15d686de0a0bebb94491b4b655f94dfa2ce197dc845ad83ddbcd4c896639831b8e5f254db99752a86b576337ec250c6f83b8cc300f8ffffffffffffe9f5f4628de6563809cdbe2101399c00000000000000000000000000000000d041c283edaef472d000d169d827488760c9eaba70ba10633e1ec690ac69650b22e96fb14b2a8782390bb42c2e80d24747ac70ebbacf42f7b7f2d5c8b32e999ce7da869b165932bb588ea0f7a044d753"], &(0x7f0000000100)='GPL\x00', 0x0, 0x0, 0x0, 0x0, 0x0, '\x00', 0x0, 0x0, 0xffffffffffffffff, 0x8, &(0x7f0000000040), 0x1f1}, 0x48) exit(0x0) exit(0xfffffffffffffffb) accept4$unix(r1, &(0x7f0000000580)=@abs, &(0x7f0000000600)=0x6e, 0x400) socket$nl_route(0x10, 0x3, 0x0) 19:43:20 executing program 2: r0 = openat$nullb(0xffffffffffffff9c, &(0x7f0000000380), 0x4000000044882, 0x0) io_setup(0x4, &(0x7f00000004c0)=0x0) io_submit(r1, 0x1, &(0x7f00000000c0)=[&(0x7f0000000140)={0x3a000000, 0x2759, 0xd, 0x0, 0x0, r0, &(0x7f0000000000), 0x4000}]) 19:43:20 executing program 5: socketpair$unix(0x1, 0x0, 0x0, 0x0) perf_event_open(&(0x7f000001d000)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x4, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) r0 = socket$key(0xf, 0x3, 0x2) sendmsg$key(0xffffffffffffffff, &(0x7f0000000180)={0x0, 0x0, &(0x7f0000000040)={0x0}}, 0x0) sendmsg$key(0xffffffffffffffff, &(0x7f00000001c0)={0x40000000, 0x0, &(0x7f0000000040)={&(0x7f0000000080)=ANY=[@ANYBLOB="02030609100000000000004c9e0000000200130002000000000000000000000105000600200000000a00000000000000000500e50000070000001f000000000000030000000000000200010000000000000000020000000005000500000000000a"], 0x80}}, 0x0) sendmmsg(r0, &(0x7f0000000180), 0x400008a, 0x0) sendmmsg(0xffffffffffffffff, 0x0, 0x0, 0x0) 19:43:20 executing program 3: r0 = socket$pppoe(0x18, 0x1, 0x0) sendmsg$NBD_CMD_DISCONNECT(0xffffffffffffffff, &(0x7f0000000280)={0x0, 0x0, &(0x7f0000000180)={0x0}}, 0x0) connect$pppoe(r0, &(0x7f0000000100)={0x18, 0x0, {0x3, @link_local, 'wlan0\x00'}}, 0x1e) sendmmsg(r0, &(0x7f000000d180), 0x4000000000000eb, 0x0) r1 = socket$packet(0x11, 0x3, 0x300) r2 = socket$packet(0x11, 0x3, 0x300) ioctl$sock_SIOCGIFINDEX(r1, 0x8933, &(0x7f0000000000)={'macvlan0\x00', 0x0}) sendto$packet(r2, &(0x7f0000000580)="23c50ff7be27ae8665ebf777301e", 0xe, 0x0, &(0x7f0000000640)={0x11, 0x8808, r3, 0x1, 0x0, 0x6, @remote}, 0x14) sendmsg$nl_route_sched(0xffffffffffffffff, &(0x7f0000000380)={&(0x7f00000000c0)={0x10, 0x0, 0x0, 0x1000}, 0xc, &(0x7f0000000340)={&(0x7f0000000300)=ANY=[@ANYBLOB="240000000800000000000000fcdbdf2500000000", @ANYRES32=r3, @ANYBLOB="f1ff0000f1ff01000400fbff"], 0x24}, 0x1, 0x0, 0x0, 0x80}, 0x851) sendmsg$nl_route(0xffffffffffffffff, &(0x7f00000005c0)={&(0x7f0000000500)={0x10, 0x0, 0x0, 0x28800c01}, 0xc, &(0x7f0000000580)={&(0x7f0000000540)=@ipv6_newnexthop={0x34, 0x68, 0x8, 0x70bd28, 0x25dfdbfb, {0xa, 0x0, 0x2, 0x0, 0x20}, [@NHA_ID={0x8}, @NHA_GROUP_TYPE={0x6}, @NHA_OIF={0x8}, @NHA_FDB={0x4}]}, 0x34}, 0x1, 0x0, 0x0, 0x4000002}, 0x40004) getpeername(0xffffffffffffffff, &(0x7f0000000300)=@pppol2tpin6={0x18, 0x1, {0x0, 0xffffffffffffffff, 0x0, 0x0, 0x0, 0x0, {0xa, 0x0, 0x0, @mcast2}}}, &(0x7f00000000c0)=0x80) r5 = socket$nl_generic(0x10, 0x3, 0x10) r6 = syz_genetlink_get_family_id$tipc2(&(0x7f0000000040), 0xffffffffffffffff) sendmsg$TIPC_NL_MEDIA_SET(r5, &(0x7f00000003c0)={0x0, 0x0, &(0x7f0000000340)={&(0x7f0000000080)={0x28, r6, 0x1, 0x0, 0x0, {}, [@TIPC_NLA_BEARER={0x14, 0x1, 0x0, 0x1, [@TIPC_NLA_BEARER_NAME={0xd, 0x1, @udp='udp:syz2\x00'}]}]}, 0x28}}, 0x0) sendmsg$TIPC_NL_KEY_SET(r4, &(0x7f0000000240)={&(0x7f0000000140)={0x10, 0x0, 0x0, 0x8010}, 0xc, &(0x7f00000001c0)={&(0x7f0000000380)=ANY=[@ANYBLOB="7c010000", @ANYRES16=r6, @ANYBLOB="00082bbd7000fbdbdf25170000003400028008000200ffffffff08000100000000800800020002000000040004001400038008000200070000000800020003000000200004801c0007800800020000000000080003000700000008000100110000000c00218008000100756470009c0004800900010073797a300000000014000780080003000300000008000300000100000900010073797a31000000001300010062726f6164636173742d6c696e6b000034000780080004000400000008000400c60600000800020023d9000008000400010000000800010007000000080001001c0000000900010073797a31000000000900010073797a30000000000c00078008000300020000006c0006804600030061cd338f489e4531e7a07185228077f54f1eb9dc79cad326fcd545c285eada1a6b619ecc86a38a29c55cd15c9f5bdcbaa5a2872832b919ef68875212936f77c972bf00000800010008000000040002000400020004000200040002000800010005000000"], 0x17c}, 0x1, 0x0, 0x0, 0xdcd91dffbcacb59}, 0x4) 19:43:20 executing program 2: r0 = openat$nullb(0xffffffffffffff9c, &(0x7f0000000380), 0x4000000044882, 0x0) io_setup(0x4, &(0x7f00000004c0)=0x0) io_submit(r1, 0x1, &(0x7f00000000c0)=[&(0x7f0000000140)={0x3a000000, 0x2759, 0xd, 0x0, 0x0, r0, &(0x7f0000000000), 0x4000}]) 19:43:23 executing program 4: perf_event_open(&(0x7f0000000000)={0x2, 0x80, 0x27, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}}, 0x0, 0x0, 0xffffffffffffffff, 0x0) creat(&(0x7f0000000140)='./file0\x00', 0x0) r0 = openat$fuse(0xffffffffffffff9c, &(0x7f0000002080), 0x42, 0x0) mount$fuse(0x0, &(0x7f00000020c0)='./file0\x00', &(0x7f0000002100), 0x0, &(0x7f0000000380)=ANY=[@ANYBLOB='fd=', @ANYRESHEX=r0, @ANYBLOB=',rootmode=00000000000000000100000,user_id=', @ANYRESDEC=0x0, @ANYBLOB=',group_id=', @ANYRESDEC=0x0]) read$FUSE(r0, &(0x7f00000021c0)={0x2020, 0x0, 0x0}, 0x2020) write$FUSE_INIT(r0, &(0x7f00000000c0)={0x50, 0x0, r1, {0x7, 0x1f}}, 0x50) syz_fuse_handle_req(r0, &(0x7f0000004200)="000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000dc4e00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ba045abcd5dfc67d000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000230000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000209bfd66eea2105600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000dce8f517e517209d0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001354c4b600", 0x2000, &(0x7f00000062c0)={0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, &(0x7f00000007c0)={0x20}, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}) syz_fuse_handle_req(r0, &(0x7f0000006340)="550213a07196529afe0c0440192d7e6b690b2971077c794178f51d5e3ccb8213c2ab2c2f9eeeaac3d26a2f97d4f45f2a79306cb35d2773c4877c1510919c87833403a04e443f0f338e5651891573291dea98a917f4f62456553ef1e4c2ff39f3b6bfa857c2fde23f3bc356a09b1ce900401bba2326ffdbd94f33d8de2e2e88332b80cd5fef8a5482b44a6e9ff53976da78235538407a23561df1fcb2aa25e96496e60b50e63f955b575f6ea992ec1120ef5d703a365589739a47991ed90db8f5bc075ebc30f1ae98d2dd9424afb051063d9f8b29b3891c4a15a7ebb498efd4ad84a1432bcfd862661ff920704ec2481ea567b9accfd0089aa576182565159cb218bc81fee7abf14cf7fd7ad2fbc9f84b66ad2ee9e72efe6de57459a0d8ab7de571be5409f07b18e19573dcabc67e9577aefeb5d076c8b331244dd8f7a4be820a55a59b007298911dbce2d9243184d8db00cc124833f82d55562ad21f64dd300a0a0abeaf8ed2cbd4e373cbc6b40510b77e9742b208a6b6b2166a9b640c6013a905e7f5966613c40b14183adba502a66538f4d146d80e1e38bcfa430b6ab8f23772c41fc291a01817fc447cd8920886669c439c31639781c8a1750182979dc91939a93f2e8df8823a83d4c00a109da1b99aac9f5400b0a18187cd936c69efea3c5959e34ef5ab1b4a230750e4a121540f88d01f97690c18ea599525db59dcdf9915ef90dbc390555742f68c333611731945467777315115fd08343175c16195186d91c317e64a2a557ceb44c930c144aa8f3a1600d064d2fbc841226ec4fdeae163c62a293851c9aa54715cf3caa3bb22012ab2244821077a83b4c7f6aa67752edd136d84df86932c625b6beb4de2499915337bc62c071343ca01d207913718d363abc6e1a0b36a891d46016f586c8b8cda719a52bddad74b872928cb772d86db68d9431686e742ad8e0d83597e94d6dcd01bdb14b8b5f76e56ed293fd7ccfc3d25459b5e2e45d6bc8cf7159d9f819d0935f3cd662e68d1d16d5bb2ee3998d0cc8fdf553356ccf56c89a5e0ca635faf9224c81902393b1fbafb098a86ebf6942106d6ff686f4ac73fb7c86bfccef7852ac6304c04ef9fdc156540ef072f20a403a869dfe9e8db9c58e1261367d2b8f9ba76a002953ffc679fddb9046fc94bd365e5d932cbf2f5e9b271300d1b90481d72f9fa41eb6e206c96c1096756d4de822999d0396eff77fe86c2bfa2b3dbdb0cfd54b3ddf378a0bbfc4397cac8ba586a3d6b4144e8a9b7a7ac998626afc7d1197c3ca954e48fd7f63ea52edb77e03176720deb4ef7942e604e5a4f500887a77b22760eb33d98d7612ce737af9ee0e78fcb69e7838adae221b4de45e8837bd468f7a405e5f8ed26275b22feb32ba3f12a893479f273e5eaa73658f1dffe09c10baee49dfd8df0501000d74198173d277f7123c4e131fe7db8f74d0390f0222f92c5859d57c709e54b4ad6549185357837b4b7beb28687c35fe62502e1a9a1dbc0f803580a6170b56e08c2d0104fc12c9b47b022bc4cb8474d4b40fe0e13f89a6b6acff2f11d24871ac50c4d10a63080d8f8368a4f982e65ad9fcdd37d809b1b55fa5aeae6377634a973482354ba216d9e24e39edd327063e4852c05db7458f56e6a0dd01440b0ead91570967008128dfc43b48e73fe380033e90848e9fd780be49aba2ff3c97b49f556f8c2c57ee69a15ff01fda1df9ff4434d7aca8049b3146255f870fac754dbb42945165ebbe7279b4998576f6e16332896b48e893f06148b7d470f513efa0f1272ae8578ba66e2042134cbdfaa1cfdd36a7f6c1874e858029429d9bb4f87eca7f7cf1900cd1667caf0f4cb74135301fae9e958f29bba29459de2208f84f4e2764e1fbed3aee309e74fd8598c602d6522f7aea29b73af70bebf10c924f588d7024855cb84f9098cbc7141ce5a6168ecc6d28e774adf9eb6aa9f28838e3e380b7b12dfbcdaaca0401efe633ad4ce12138d8a995b8b27721a2815c5e6331d2fd803c13e3175a5c02c5b5344409b06369a9d4b457db201512f00f53df67ae21fa597f5f3709ebedcfb347d6bf49df34179d0b7169a75a15af29869b2def01a7f5af087e444933ba11d51ce973d59a47efb884daf6cc5258d00a3d7f3ed3cfe450c72cdc5900569717c8699689607e66c5b5d6dc2ff8dff62e2047b30e80877827d2abba12e0af85b77246c7bad649631a9a0853cb79c7ba27f5f6ef5dac4613a7b5d1de79d83958ce4b37a17d593756f9c19cf3fffbcdc70eeb8cbecd6e77cb03e66fa3846bad89a2fe1e284f1fb227340cf4f4ce5bca6289c52410e98966446b4369d261ffc8057d56b625ddb09160298f1a015c1657c88603822566d9b4483801b4f5baaab4c530e61d9378132ec647d2444c04c446d3f2b972a46355ec08e505fa9995624e281292736808c8fa947cc4564c870f03ad931f58f68512c1327eaed18db6a55960ef8177b089011617e64df1d8dc0b9eb3010885f9eab7e098e5711f9e41f74d7b28943586666eb74ff79f67a16ae8d7e75561741c85c5f822f61b2552f877e739a77e20678d2c7a86cc6caa5852278be0cbecc1ddd7674b872e5d2e69c9a7383a33dc8f8c56548da95621211ac70dd89aa1862fa8969138e84810ec854b7b923bf7510ed97cb80037a84a8e66650bba2319dc30bbc3f40820e1b389f684db2d30ef28c470d82acea65419d20f518bbb6a99d734e82ed60fef979e6115fe870498670af117be3cec9aaa577caf1f61d5bbd12ce72a35b77bbc366c6790f44464efafb9cd8f9a097c6ac5423ed20e335c3992cc950b90fcbc7b4c3df2521a31d917af73058c93c1f3e26b47487736691c8b1370ddc613bad413982261e4e036579188b64cd9f39b1b4a32ca356769621c507b37f814ee0480b1a966ee9ebb56d6979a9d38236664fa1fcff19c8f0a429d86632e195e569ec47035c4eafe9185d19dc5e8c635a361af2b4fa33815361c000844615bce501648ee70730d7a1b1da4f0630b1ca90904f80e9e1efd1c8e1b61b05c4f040d5a0430381a53f4a1570491719560a3fb920d6722cafa0755605c955526e618221d1e4e766c35e84bd79ae479b5d178b241662cf9a124825101cc5e1373f3c9ce7625f7f08119fb011acceb88a9ff553639e7eeafc93b6135ecceb6eea4c3dab709005dd7be2f1490d1d648c99058f272bc325ce5fa663f4e68720a5f2b31986c66580a2be4204cf311fb3e5d61310445e942712bf5dc7e66a9370a5a4afb6aa03fefa3f0503d53cad9b79a3ef2ee9000edd8990d75ffa3759dbf0469b6e393bd3627a768bea18f533453b38d17dade925f7ca6babe27adc6fa3048d2a65bd2b0fd840a94ac5f317a1c839738ac89e7b22d1766308dd8247862f304fa51d727a27f0137fe19b371e5946555093e7ca69139c48afca4b4ac46c8d2f56d5e673e8b52dd94857fe953d10ca886c921b6626e869ac794a78d40bf49a025860fd57a0f437a4e650a9db9cddc93f8556482cd3676866d903b0f70601cc4eff564eaab292a4208d0534321e60119ffa6177934a2d1d7a6a1f1803e762c8d30e2a0d5311148bc21e4745b7c3dd57d0a616a2c49569942f2b48360df6c54f7a70f8a585b3a0d54feb7986d7d72ab0e16ba14187af4b9ac5a69428f1f61fe25e13cfb97ea30fd9a43e53b6841cdb766d6b3dcbc70277f2a0a12bff718b5bc50dec6fde5a0e24d23904edd201c8dfd51c1d198e325d65c18ce4d5ed1c6aaec28d40260949ed5c6bdc90f976c76dfdf399a9f9789fa9e176910f7ffb6427c3821fbc83747cb0d2ffe34b0b18fb34ddcaa70bb4624acd1ecf208e428b7fe89ed0cb0db2a7d74b284cf893807b4f76bdcfe9088912c8e83144b78ec8407aa37e94e5454946890174aa6be77e42fa0d764ae36855608d63d269164c3ca6a989232967f168c3f9b41c1204e02d7e9dc06010106f6b41987728775a5c31906bc7dfa33808e5523eacf7c914373ce8e61ea29407040feef8e9511fc04b7f2f9936a3161fccb7deecf83f507840898672fe13846ff8185ee0aa6734a704e4b7ab6ba3fb1c601e57528d68f8955fe42fcfa2ab0faae4008023b8a34ce4f861b5b86b5b507ac1cccf38355c5f0191e8ab29c90627657d6e100957cae6fbb3f0f4ae2049ed3a341732b4730b5bed1dfa97f0976dfebaf03a305da2a79d6b8f2e86f46bd7e257d170728d5aa55f786b5436a221b0d74355d55123fa1c9faf017103c3d6a6ed1e8e26fb8defd944c49929ff5ed4ead4e5782d14b09c9ebd593533c907679aa6a0b94fc8494291acb16e4bd2e4b953ac96f90ccee9e11ec88b4f590289915a6368716dc3e28dafcc5eab060d2c48911f288e501226a5145ea217e834eee7ebf0945e53baa08b8d72acc67fb14dfa47421081434b291a15babb97588c6ed5c7e79299056c70f5362953ef499b7a88c373a23302e3ecbc229824de95f12595f12580a3898533c48ef2385d7f398ce31c3dbb1c02547e84d0210595bad9a149ac653a3537edb419316f244f6a75108997b6597700df352b66acfc191c6b234c5c7beb2acf943f8274e0a159612f4ed440f3ff715fa2cff21b32444e5871a050e33e17695f1e3e7f65f82fa8783870c0c93f961807c6a56e666a5443948e2721570a9068ecaac4839c8209654e2efde43141b1551c9a966812b13bf4f9cbba828a1eb948a1e41a122e175c0ccaa9794660446cf18335ab13d1675a26eb81b1abdc776472d5da139a507f452159e3416532cf59eabfe01e72f4a4bfe86d293a7124ae3478443d00452c1a9be915f54ccee5d857fddb9ee4986c9186857fb4635a2bfb7b8885418fe48536cf60c67c10c729f92a8f91826e85e34e3eb78c186f2ff93b0972fbef4cbed448618e1c2cd7b5cd1b5d529317981b4ed973080615e0b385b41778cf536d9e24fb0ce048ec0dce5b075febaaf34de2cf59d9030e1a9ba924bbb5cb4098d82c511cc42cf9823ba77849bc867a6876096561ac209c2659baae0374ae4abb39b0ca54874eda8425942012fbca984a4c6c21071137eb4399d4c6891222c8aaf43cc78b1c8f2a9cec6b5acd748f9ac4de37b1dd18cd0f8d7f20337fd392ed10258457950184264a559b80c1ef92868676b258a9b579ea604adc0bd388a8b30822af1fa5120aba51e38e1dbaa840472e1f1f0eb86af5ec9f87a7324e49c4c0bd2b9365cb3d8c92acfdf479548acc9aace7a342284eb895b564fbb8bd577d4a310dfcf78f15be69da13b6710abc4cbe240a62798fdfba1b8a019f9c5fb462bf040cce44a1c8bda3819ea42627e71a5bbb0f8f3648daa2d26e81fff4dbaae971deb7dbd407b7583c9afdb7e7dfd7b81fbf1ca84d57b27e059acce70cb27ef3742e81a77889b01795adb0f070077b758d80e7a05dc66da4b9fed081100c3ccb5fd8ccc14dc36173673917dac8c6fa72c5989d0f6e0bd97501cbedd0a97137d3add8444330e1859005804e485fc997da58927f8cefabd995124e6baca61029dc3c4b091234610e04a7e8457c1dbd28a542497035615a990cd675d36eadd703492562404d366ac4359e66e5e8ec9e40cdf96cd1fdfbc0f2280d4358d96bdec660a6ae473723884aa79bd61b96ca11a7175d68a401a0b77882e7a44b3765a582018abe6a367d1478f5b06859e777f35d8f01a39c7960cb26477207dbc9a0a2af6d5beba095c606a9a11ee236aaf91e6b3b6be0639b2a13bf4471acc9f7f2f052d2a86c7ef0f0afe6ceabdc4f99036a05120b0c49cf80ec92b62c766035a5887f4bc8fa1e0c9c69a7b690c7cc2c8870f8e7beacba9b1a27c66f8d02e33c957d923b0a9dc4ef2b3237d2f83c72651966f8b13b24e1aaa5dd0122b75e3afc4cd478e296924349e077fab31a38e38cbea1dbc22689b82a1a4698fa4841bc0c0530dff14f368537c07eeac4a9c2e02e3b21669d0e039af22a4f38d4c21d861968bf312ede1ff02893fc44197363dfd89b5b704de61d609fe1d9013508e5b2276953ba5b1f8018c3a7b3c233d4cb3269f10ee6ca2fa9de79efe709659538108b36c1b71e4d2c3602459d57b8f46ffb541e2a6f4a19438fe3bd14be3e5682ddef68519cb56d79dd5b2b40d1281e84623b01af3c11f7b2cef780d06a0158ac7becf9b7cdc51618db8e7148a93637ca1a875d8ca2db07d78a5554760b792412c7c108335969c676888fa2d180030a8bbaca1c6c36b1fa26461146ddb13c6dc4247f18985a6cdfbdcb5a3455f497cf674fab04c84906627d32a0104d1cb3b1ebb9f398fb6c3a9af34a05ed7bb900335f1b84d2ffa2a589ec46f44399f4eb8f96928aa073f414765347cad3b0e03d551166e5e2ff9a89c15dabe0d46c925767df0f85e9c438ad99f0309400efdda91d4e61d0e592f8fda490b6791e41c098a9a839e040f5580b2d70f714e3b41ca8cb7a21fc2a778eb18a1e2a32c237c665fc4c496732e58b16f8607ab26b07bc59147218a8011068fa1d117b7e13a3c2b8cc6abcc8e184b0c7d061e94c0cf8c61b6ab194f3df5747ce68b3923b5998901c3d1294ba2a0df9fdc7a76c505bfd172a5c5bbcc0df736ec54a2a11b3a26115f1afd382adba6e3fde1e781737c12dab5c19bc5d27e91eab6579298d4b46c60c200d309df433841311008089ce0ab703ad7b7e17426391e22be7548e642cb4eb4703179cb102643aad424ddb72267b6cec2702fcacf19825303858fdeca7d5d3979c900db3ba5be2301c04a78c58ce20ac8f4a6bce27c4865f36511a4adb99ea25ebda5a6701c58347342ac876f80805695b8ad67501a793670fc76221641b89dfc5519389bc5ba56cd17b47bd2e075139c8db24e4c3a332723358ff5b8c6d3dc53fc79982fbbb6b887b36d52232d6d79684fed3add6c84fe070aedbd833165e5b547a3dcbb4977595fa9fb6d7d8b151858c3967b3e599571340568a2a651a3c6dad3a4a24127c28db3f27853cf3738a3476120f845df7803690ec6f97072b2e040995a957dfb6e3c27d55b7ff94f0fc44eb27b7fb81d5601ae88bd6de44163128bf423f1f76bdfaa9a170e43136acb8f5d3bde2b81e381635d4895f224fd8b7d9b04c8115454b0505ee03b332419c6ca3ffec3b127b036144ad4ea5b7d97482d298493e04c994ff2152815607c695991e85065f2c66a36a0c347a1e0b10ecf39500ed1476e9f6bb09ba569236d24459def02c37768956e567ca7c5c1c2ac05fb818d8610da9fb50cb6263edff4b6a165a13a1977f14f3b9101831b0f364f26e803ebede14a32fd37c5067c2be8c50be29d6757767424248ffb425d1780f9f164dd1d5a1999870af4f73bb09f632227351e0c5e24c357b7646edbaa599e0b62c569e32dbf0080dbf509879397c90ce4799b59e8888ae27844c760f901197250d395780e2e1087bd327c155dc31dc5b408e847b031f93e48345d3b32387934c9e68c9556b9d275d1634adecc0204ffb35d1960e736a34f0b07e2e7c4ffaf84ebc7ad39de16f968e1462c5371db06fdd21fe51b08ca295acbfe676e1e683bcb2dc9d3522b86191a151ac590fec45867cd81b97fd9a060e0e26f362b842390ba6dcf66ffedff1d26b87016b7108b4eb4a6dee0384a789d2305b871d7caec898358f01346d089844973aed3ae0a7a8fc6a5cc90a1533e0bb3696e243b28927da1630837a6aff33c2e8af1a7bfbe2ff8060d8df29f6b9643dcbe2e2a8721795636fe7b3187a48dd08a003f27dc2ddd76fb84db15572e0b2b857ed2ffe73526d92ee2a9b13f2693d2023bc7feb2ce769c2e8aa9973be33c77b5f8e147d4c7f414b18c9edc8cfa0169cbcc0c26d59f016fa1e80157bd8dac895a794a7211d83c84c7e003e663f65532018b22ed3e67be4eaf592a8a18b986245f6a8fded9b1562c6a106e04190cf0260905561565a131c3074a7af5a18dad69aa7d62636b9313c1d3e5689671912df51131315f715ea84d57849dce2ab105af433b034501128e2286e1d05384289711dd151ad097484755d32531508949a6e3caea36e6858ecb895f0ff5cb71f8b1cd677405139d5e95c6c34f421b0b1e0898aa74f7a96d7170dc0df19f1b88a0463608d964446967262ff7acafa54b0f95cd0c1b01c232db641cade388b6f348784e18cd33e97c132dfbd501700108b59ac80692371a4bca4f608d9357c6e1458cb372aaf02cf8742b164bf69aab3aa1bd6911202ae7d13f2d1cc27741e4856c9e2d654f72c205a9914969317b5dcefc8137aa564283d64f71209f82fe928836da1de181d6a52c9cdf1be072f8b5c44b063e7e3d629157ae1a768cfdc7105c6b50234b1dc8412f6d98038520fed97db8347cf02924291460fe3d392f21d7ac31aa6e90995756b6dc198c04a6c6eb6c5e41e1eddb8c78feff740273acf8938c0f52c108e5bfd7e559d73346e0b97595125992bfd6aa2097c0ff502482a641f8fa3b2f411a9bbeb9f8c03582ecd1d756013d793bb15b4c1f45f0a988f7bff685c493df30bafebfdcbd6b2ac26a743a0a21443ba776f17f021e80df5eed4926b10be1c952f839f6c87bc2457e1b95f73287895961a0d5874e61da6214b738124fc872376940480705aeb628919d8c9912909823ac384f6a072c72c03c12e2aa8462ce83737244f5525cebafbb491a2a75b4ae8006c2c9bb7d20b190987f5f85afd5b4c1fa8a643820590dcc5e9e55749df8e4aaac858fea295be26fe3891762cfc2fa45f823066280d2afad8653b94a813265f9d9107831181cf8839c72aadff85c745af743e0f22a30c28b4cfea2aa1139790d3e7b491b6b092bbb18bf773b06c3077ad3f1261b8f401e56d4c250c0f30e997e6a546f9cd1482b4717534065ffed131a8e4691e28456abc3ceca5849302cb85eb977a1743e9836ba2ab835f622cbfebbafac8a8edd97e5441ea0f84434b9949c4e5a91a7684947c0370d271e9788bd8222d5f53eee7491d20eb46c7321d5858e427b028ad279cb540c1a547fd18adea0e0d011cb7d251857c1ac23fb502f2ae515aa8c90bfa1bd693313100b6ff278212b06efb23fa836fd97331a9a276d3ec5f2256245674d65d043a072dae13c2649ea2f578583caa55b916ee6d65f510a94ac3ab6eca201f34f2074e631715b40478bafc594cde728d8f695287f2afe8af28859d5389034a75f89140eff05615cc41b06cc6879030cb0dc1788e4f34b3007a4081a4a8c8d8d47860699fd029d7d2a17c1ab2678fac43fedde3eacb441df00e61acf90d208591f70c75dd44892edc144795f86de15db7d9ae43dcb088c6eae8259dd224fdce809d6b4e2f13e6fe8e5b6da195ba0287ecabd18d48d1fd4f1e9438e120484df2e1ad9ceaae247b5b4c639413aef383d948dce80446ea125b67627d25f23e9fdf477351ac2d4f741e88dcd5f91550c71e72b84c90a5282f94bd9d1f08e3e240a0a4bb4cf556a52a994a8064a2c77e41d66077dc039957b795fc28239896eb2068ad16e84196b491dd47e16e12009398db1be984aaf6bf62fdb471a456b32c58f77c158461ac844dfb0858cfc81f591ae0105edde98acf7ea1c09599ae0e5c45b62f039e37a48b7ed91282aba6aab1d2c2b039b3f411b2f6897464a8ff2c333717e60a298be2709389cc644c70ce9c1a483a61e13617f0dc1902c3c8d84ca8ff9c0f43d022f448e100732afb8655c726e33ccdc2785d5ffd7ee533a1676ea93cb7f962dfd8ec47a32ef703fd560965b20a2fcd52207db1ef0046e4ddab569776ee7cf45f476772aafd16622b2613ccbcf4213183d5f079e9bee36d86ef709ae54422e38abe7a1db408b7ebfc72f6ca2b5dc19001142773fd827e72318c4fee1af716211d2401b104a2a40a2a3f4f683da6e5c8d827f798a73d2fa189371efaaf6f6e4c1a8460f6e6e51064dfa079adafc7d1f0472d042258395b2aaff31e943078e44a660b979e91e240628a12074a069b7045f20c9c9a9b2823d52d1a71cbd107b5b888170c2766fb012f60024c0aa6c5a7505cb17d925943b25101a0f9d2e78f40cca2d1266e06a85ab32f8f60dcd9caaad0bb5f7129fce17ab4ab9f2f1d9ffa5b9c3662498737d020614e54cffe567fb6d746c9a33065933c59b0f66429eb43013b43306506e0cb158d79d61938f52ec82a373bf7f03995e63b00fe4b109b3d918c7fb3e9d777771a510e1ba97321d2eff470d390776cd39cefcc1cba44bc0d0a5d7ab038a2cf4ae61285df7fd2c863d3ff26640f140d6c05222f1c7def48851a367405776cb72f19049b9f87e6192227bbddbfad8f8aa4822f6dc383b94e54821de59ed22ebca2babfcc7672606b90efc14eff624f338d0b63fb20fe28b3b3b1588788c12e77e20992e82eae0aa6ecf03a627fd66f251b6ca686142ea50223db2cb10936cb8e619b811a21f914b3f8ed1db52da0a40fc63df4623eeba59309ce490860eaf0020e63265a565102e050340f9148144011ab34c8617a8806153c8ae062293937ba31f789c97e937e7226a5e2715a214120e38fdd66c67e19d40471994d2b84d9f0acbfe2c255c671f3d70a5305dd13e7555dabbbb87cc4e62b1b34cfcc5d1b34a664d79a46d6826d4eebdb5d7df86128a3152ec3bedc77f6c1445732468ed7b91123cf314843e939e369b69d0c657f612a9a9c9ff40c396d2a3c05b27a57dd6198428f7fa2638eae170fe584310c11d0b13a15ec4c1b658d5782b20de550b166f2d89835a34a893cce987b8a807e21686ca78493c906285d7915390bbec275bd5535804b46ffc2de6cd313235ab52b8e04e98b4a7539b6298c974254284dcb32875029c8066988f141034fc156a5fa861826e49140cc2222099608bd279e6f7b3b12db95caae852eccbd8ce691e0bb937a6c83f929c3517a0eb2f247b397c828ea7a97be6cc6a357e47fd52df8be5581ba6b606b81f173656c4f7440b54e644ab775befa10887a1b66e1f27b98708e80c7e2bd8791ab006db14f261e8ee3ff42f3b8a3a899d8146d24896f8f6e3e7e104ef85fcf2f9453847774f63650f63cf6d944ebaabb9d7f5b3f1a3175860acf493534325b9b5da74bbc226c5f346aafe11a974d9accccee2df02a81d971f564bed3f7fac752203ad2c1e8cff090f8ead99885ac203351ec4280a1d016ca6c520061d864ed0fcab91033eff1f8c12de4e831bfa957c1e89921b97c5891538b9dffbf93b424e905923ca5f25bd64a17d3726922b9cdbfeed6c80ff9d06a3cfd0e9497a7b961aaf9538852a8e93eefc8ab49f416ee9d1b22d70472fcd0a774543cd8ef286ef9fc586c3661b3c8dd8de3af588f1d91bbc1d3f354b5a05f0689ca8e75f5ec3e1f75988f9058f0c154a4d2a748b2bf6b8705242a739356329878b0251f2683960a6e18f1e9719623bcbaf3176fbc0dda2125f506475c81c8fb1364de92538400a4278083aa7673e9fdd3a13e75ae0ccf78321dcaf637977fea58969252f6485a0c7644c2b072485dc76748ae76e2a229430b3b5a1d3b7785dc560f5914733425a02c6cbf177e85544b6ea8cdeb42f05707519d79d01f18742305d3fd952246abf5732675f000", 0x2000, &(0x7f0000000280)={0x0, 0x0, 0x0, 0x0, &(0x7f00000001c0)={0x10}, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}) fcntl$setstatus(r0, 0x4, 0x2000) syz_fuse_handle_req(r0, &(0x7f0000008380)="1d3fc0588fbd1ee18d3d558a5847e5909b75ddf492b38ddca57fa90102c1981d37139db16dff89af93eba795c940c2869e89d66dacb9e0aed49166803315f8c1e3a428d3394e202f8983f2a7a557b15c11e2ae42e2f07ac634034c2c6d63fe5505d3cc16fb48a8119d815c5d5391518b847b1334f3d717d9ab5a4c85a58da58c7438e79be665e1b196897bdb462a2266798fb036d83bb993d48bfcb2774216931c85a4fece4b93b635c3f1e651560fcd6ce0b182aaf777cfa0bbbcb6e5e9f4d450fcb95559468684612a5bc1582e273fe8bd58088cf411e97f9b671a81d18e865c2d899716fa59c45d7034afa7ce30b800091bd01ca3df0e083e1457885eba6730a6c70601bba70b2323d6b669898290f43afd84c333ad8c4c3960f70d0e47eb8511071b4e2c6ce2b12332632052cb4367a98593bd39bfdf76d228925d3e7208fcd42d701881c3cad1cf204669e4c598c7ae544bdcabac797503bc1896d36bd0be9edb543d5428cb04daadc0b4e54144fe8a86e1e372cd773a00a3e759fee51aa7cdfedb8c2c13ed709add3235e70c1dff10cc5d473f6c1ea92354c8bb991be1c39f4fa739824cefb41621e8a6cc475599ad2a86f2cd5ffc85684346bd6aec793b06141ed44a4eea375dedfff21d720c725562ae759c5f4737c34d8f1183e6254016f5d54a90114ce910b4c214f35721edbab6b9ef69c89fb3f770915511ea31622c453c53f646b205a0c383cadc845ef9769e99dd58f242b24e98d8d74622f4b7a2b42eeec0881b435404805f177865eeb3263ac63038270dc90b418407cbd984de98df8a449ed3466bbcf6c4b140aa4c0fbcfd4d88e1534e17218c87c32fe2d88807e308fb8c3ab6ca8d145f7c6406459b926e07cb30ce4baddbb0824c0378589b3cf3e16c216163e2966d271b8484a47d3baa946cdae77fd61a10472da8efc228e405ab686ff5a29ccbf91f6cf62dc371e23198b34880f200428f4ca5214c2966c426ce9bdffd7ee2c597d80ff570f44f3a07f5eb24fa4483e2938c98a9e64459f04913564df5d1b29f93b934e95fb4f04dce100324e5d7e6c22b042b8773a792b88405831ffd63a5dec2e764df571214aeef33cbc6e66dc157a86dbeb1d55bb3cbf8e063dd536d0e0ff006ff850ab20fab4023ffaa07b6ab6f8651ee9ed593774a3c3520f595984278b30fb4c0cce3a0afb4836952a7115ac345557f1871511415bdb9f593057624cd8a150954241cd60dca17b688d97416c29b23a767e9184db7e19a74aee2f17d11fb024d906a22dd2ffa2da04c97348b74f4ab99248059d1ee542c5837acb69f1c83f50dc66f9e1674c1b157e1e4f95eb462cc8b3db4cb9fc52086c17f4d5a9fc1f7748dea1fd7af47a7989c1219fd22c91e95bd299d3ef22bc73409d9949422b6177a99b6a9f610b737887f75f718257b5b2dd515acff039886505cf2d8fcf9cf69f74b812121d219ab526480a565a6ec9c2dd4de1b5d2632833a81b5fd445bc049c5dfcb242abe6141943fab1417ba9d2174ed25c521a8e5f6d1354c93176b6d847aa9108b8f49313aa6fdc0a88d08d3cec4f9e623f829dc03aac91c5847d5de8d21dade12e7efadf216ac3746530ffda5d038fd0bc7d105fb8b9fd1cb2e789622b39c0d559c3f887e11d29cbbabfdbe9603ce261549babcba3ecc739203f08238a5ec44719015cf3bdc0eac85c3d72ca34725f09ef8a5fa7cbc3d9197ae877314de309182505e0dcdebb78fcafb35504344770642bb13a22914b9fe76fb948ff03a1a42cd1a799dc0330ff0586aae32fe45238978d2db16629ff8751893e41e9ac72303d91de135313999dde4d93e881b0f1998ab87e5f8e7463261fe872b3ec4ab2344d26a982e286e5e7bfa8126ef4de16fc6107e1b077598e1347cc7b74d57565d4cd9b66e76f6faf51b247ada9672af011db71d48ce36bdc6fa234e6ccbba32a450f837a7180fce70b08a199e7e4c4bd3af39c6b3e78d56f300a45463ff04a55542b01b721229fb35a788769dffe8105171a0cde67cbd9f066834fd24b0ce4ac39a0ab5f96e3f24917385ecc635d7b8be5d9585a5d389316f1323a9916241ad9b490c7505701133451705ad712296bc4519aacf073fa7419a9a81470c315390d4e22820eb0dd0c9605132016f883b8a5e9b9b9e08cdca196abba7f78732280b0b93278f469cc7ba81dc6e764746ea2604d8ce78e301bcf2b9e638849a36fca9f9386f5acf8d9084594c5f20504ad382d4c083c5965f633248f20f1c373e6ae69719bd21355290f50ed84da142127b2c6b0a4cdd4ef4c753edce171d49438ebd31223e8a36f3219a3d6c60ca3a08f88f10bfae1e6a2a5391846ef4e6dae8442b17f7d9f727f47bcd0208185ff18474f1ca1b64580069e35e47c9bff3e421799220dc01eafe2122ba5faff63cd0f275c831e7933391fc180840e9bb5acb5357b196d045853398e93569b56732a637327aaba610de7a00fcb10410457e4493d532c99bb6e95786517add55467f06a23521b7e92be2dca54c9c3df2542384a82d27cfd02bb16e44a9d8c5f07f7e232b794dfbaa8bcd89c359054c188bf5ea5c251bb787282d86b0ec738283e16ed5dd7a74b03cf483fdf8a14a82cf47f4b04185edc4a2dbfd6356927322a15dbe4f35848e6f10eb983797f2886a266b31c0ddda9e2f45282d137f2e6031d2a756a56552a756dcaa24821e3a54fc3cf38c08feb31cd4e32a464d9399b10d7eef1bd627cab3f22775f4ff9d8d5d017ed0d0ad49dad13ea4d1d2cff663d9796b43998956d17bafd8fa49b934dee9b583fe62088b251919291e3b4ca1cb89b9cb035ad8179f2b60d096f96dc1efdd350e09ca32abdd88bc5bc283f0a3fb32588c87e37e2da427a469689c65152558e312536a2fd5edf9bcc19f25501cc9de0fc3df1a595b61ec856455d184f77619ebe89911e165d81597081f903e9bf69e1d51c6fc1880186a356157306c2ef2860d04cbeea0286e4f56d85cdf91cdc2029bb5d1b77debcce4886041e3ca2d6ffd2ec999e5f177418f21979f3135ff517364d99db378ab03df76febd0b2fcf72e7476956428ca20e4be0c63779b112a393a05c5d44d6dc8088dc57a9c0a5b0c5e2a41d9a265a400e62ccaf48aa478f929b354f2013e3287546dc8a811fc7964a50a790888ddc1814039eee62313ddbcf1c55154e386b011b36d8c74888669f334ff7adb1dd421d43b6223ac8beeee98ef1e54e6dfb4fa69ca8a321b3c2edd30143fc17806b04f8bfc403a55467be88cf8507d94f245ca59d1ee050f4312169250ac8ca1eab6eb00df7bccaea896a6e2cdfce521a404913df83bca8e699913b4cfaaf62d00b90eeb3e106eb4aafb7bda8d0dc5383d191d54a253982bb3885dd6afff5f0d85560ab129bb4b411af28740534edae48bc106ac43c3aac6528f48e059d8cf0cf870f9dc6bb669f2b43bc1b42f46a28d82c200717be88d4493572535d2663e7500d865bca452bb7540d163823e78302dbea5cdece7e72b84880423a18fdc1a080e0f0bdc7a58b04b8959ff6f67b224fe72ef22fbf6adf4812e550772fcc5949a157371f1def1a020d951c005140cde6c887040cd035dd972fc75b7b469070b61e1a442a78db4c74f482b950ac7aae40b009c2d6736e9dfeef0e9c9d718409063c57b082beb648fe8b41d3ecf3ded5cb24f7c20edb6ec753c4574a594b62edd81d4deb269b9cde7e2cd63d8d6da58736454e383415574b6f88b0c4dc158be230beb2a67fce06e7d8a70c554ebc79c2d40a31b1c19797000a8596a79e8ef11d87bf2922e8805c455a3da4c4ea2c22ef52ece8082708fc1dbed09872afa250f8351778548e576e97e4b3da023455f8db349fcdf8523f52a56c9b1f3a863652b11ce7cc619d6eef1611e97d7f94ad7dd65f54f88cf49d3ea4490fe76411dd3de5799174d1017b9f3017c2c3f8f30bcf28b68d7833b7a8fa46c3c3b346e1e2f55d680d22c7136f9de526427657ee167cdf90c90142ba705465ce94bb1803a1540b36cd8d22d6d9115c002f2ce96bbac79a573ea858cbb8977d9087f1e0063cea8c86a9671405c4fea89012b241d94a31b15ad36cf388ce3ebe924019aa3ed069bd07a24a46f7f818fda0d6463893621d6531541a57449eaf57dc09c9767a598444e07f79e2beb85362ea93ef04d37e5c4438c8093c026b3c042bf3cfdf11e5db84c05d7cd6bb090ee7686d87551a807fa47c07a84e9fb490f0531d38b86c344ae8b48aff790bedf407b71cc49440bb2300f9d9f73726daa89c7b3ade0b84323a6da6e7639652b004ddd08dcc03a7064866bda6b17ce8c003737a4c3416551a6fb779c414d4fdfcd3b29bd0daeb69c965f8395269019691e1552da684b06febd81d5f71b9bf095ffc581e6333b10f7fc4a3f365c0bce141b95a6fe580a4183713103cae76c776bbd29a8b26a3f2314609d1540eae73e43ba296d7576e2d8769bae7cf7518966b631bb3b215fa6a56b97ea96e116421ba669617ecae72e3aa186b23a289059c16fae6aee21ddcb669592e5068d84287be2d80a72642de4950366b346285b42fd89f49ba3002315c4cb76c12ca0f96b0eb13547e701831646ba663b0622eae281da69c699860728775e6f71ef3e63cc010a2eefe8d4dc3622232d8abc022fbdfb7821f02da20ffc938a7228d5a8eef8a9e4fcdc2ae68ff7ba6f8ff7e7e36fa40d35658e727554f696c4df6a45647bd661450a2404dba0b6021bc7a82df05b4076f86a7f33faa26195eedc2377158fdae5c4704456805c8458f4d643e356736c2378172d11c33dd73b0e760ca9eb5e12d707001955d3e6c85d427a472de77d6c1e28220c8d84eae5c4403484bb0d1b7d207c0c9ea476d2efd0babc5b577fb333bfbccc396471997de9d71b3c2624be1d155ad787635d4fee3f253e5b5f9cfec484cbdd510bad883b79381e8c608ce793cfe175ddcfb49ac6f2cb67474b415568ea90411f455b651c5c6890c94047d86f2c6ccfd787361d6ede1fa2ad89e6dc9fa796405d8927c5197e17e771173ca5ffe4af4864bf6a9ff10ae142ce2ebd664ab94ad37352f36be1afb259c7b8627849af46447ac05600ebc9eb636aa2e56c0c8540857595c114e4c1c45bd735bd73ddbe21823232e1db6ab4b985a681ed4ef505e6025d4d234086f4bd8b422e4e7e31e823bf5ec1d514a328e1f9ed98eb289de2a44229c66382ad64e3a1fddc548786c52c4d74e6e5dfe1e471c20a8bd6a90c1320318e74e7a1f3d7dd04eb81b37b8157db526327bc7bdaf16b181ef71d813588c2747039cd9c62f2afb253ac3a743d083ee53ad6828060b214e69b73b2064e5a01aca0ff1f5b30329ab5fe285193711f4401bfda2c89afbde31adaf1e0a1a9dedac7ae09650183f460f4a93b0e1f48728fa0c2b1b70c5a2ce4cb3d99627f9389d94aeb64e27054cc71b26f7f281874fbfe82ba74e609a2ac05ed5ffaa344fa14091cddf0c77e883a295d529916a16d06b4207e4a72074707ff4f17e9657b6f55d021bfd432de6ee526d26b4f70e5f8da02c23d43cd2b0ae674a573258df27b775db221d416cbab68084c3f5214b199e2fcd84705772984c92c8bcffe37950e8f3fab716f994765d0b09549201bb19ed09364880ed17bfaf8be10e842051f9f096ef864266593b6d97767b20a5530683c88dbda542095e9b57ce6e04b19a682652a4b72cfb17844a0f6a9a1a89f3f26ba56a05117d20f3bfaeee61d7deb85532ddb7d662163aa6386c91f40ffa00db6f4a6523b0b494330a932bc544629c294044fd0ac6049f285923b613bba81064f84ffa71a900fa9732023c8fdb0c480f3154d0dd815e9f2661b3ccf3da7c3127156e3e094041e365c97dcc6e74965a659034701b9961f9b755eff6066448f65601e9e44e12a7423d94027e4f118b5cb9f33bd762520afaecacd404c6dd59dd791c1bbc87277d5028596cb62ff14be1146ea78626e182a5beb492503b18d620543301161de533af3fc1f666727366f10c784e2f0a1bb5f5860b873f03f26b03707c2b8cdca494b08cc98c365009d22f3231c7eb2a24dd6cdfacd577ac334c2a07bbea2af22689fa35cc663013588419b5256fbd52538c9c5e708ffda77c0e97ced2e703ea5229d4eabdeaee8165e80d5867969269c0897bc45d06b96589eba66dad2f98aa72ee0aaa4aa88d6e4fdb0df504131909629eb4fec1de621e14f5445903716fce8049f89a0493607b11e596ce14c2e81ea0905922abd9c8601f558be28d8a409c360a279b86a2a3d09d8c422ef396979b9c3aac8e05b02975419213ac78dc677eb0b3a524ac0baa037012a97fbaade89b939f66d3cbee41e0c05c62b27fb0ae6bce02f7163da983ced2708c16b2351c1460131a9e922f1c1b6981c67faca4710346ed65a4ee56de725bd193bae5574ea91e104f660c4d502b7155eccd61fe4c5b819676b8727492768fad9d13fab5a240ebbb005741d5bbc215139e07be5bb73e3f6b4c4be9519e81c7cd088864c16e4650ac64418133650e26b9ef9020f55438acc9e7161b2c74bd172354ccc051e6c4a6897354bab543a7f742ce799a6e182b86839173acb03f39fdcd4a7637bb48d2e4baf031079687707612c006197ae598d335c463b6d79e0cc3bb7ecc278b9407a0d53381bf3cb65e78adf03a7dee07409b97d2df91413f04828aa2440049b9e8dc4fd907d879fe8480a239beedf8b729dd76042f50985db6761ac1f2e7f0cc48ccc7ba4d0634b0e816c8c68eff96832fbba350afa1107f2da7c53bb9ba8407c30e41da1278f31cbbcc394aafd6a1df76276e39a8d3c27c417753695a74e7252ddd27542b4bc2b0ab4cb001d01411d288749bfbc24ea8472e2906201655ee65d3f435f158d3295590eccb3e84b3f09e12db00382dceb8846fe155eb20580c20781619a894ec92d9a80a422a10b7ea440c4ea0bf3fbbebc89b2c11f7f3e858c16cb823e10203a957bc48959b1d5e3aa69afbb8a5ad1bf617ed59836a289dace4a5224ef9226a6f3d27f869292bfbbf3607f5aa807d294caa053a85a2f54d97f76adf509593bdf46054fac6e4a6b66f173a31d5eade9a38f5106a16704e80d61658ba3799b00919f87c0b02fc4f7c288c0252f46240efa9044d7458f6b92497321f696831565fca86c1c0bb72b4952102b777b466861d22f78dce75b8055dbe3d73168d41059715a23c9ed906e80b2353f32fd43e92d5ce90821bd9c6b4063125339b8f3a8df16ac4b1b0ef85cdbbc6f2acc15ad9e0aeb19bb0617f8623dc029abc232a67447b1ee4f6c4ce234c1ea467a20e8cd21a097f096855a75525c55a2b30c74ff8011476addeafcb18b64ea09600d7056fca53a12a1f89501d00dfcc81f74760fa26e081043ea648148b1ef1e4906e0a65154fde2c554b4c36e97de184dc9169ff3a326cf4a14708fe3c6466c37eed71c44143fd2d5e22443d1b61fe42fcf52207f17422a96b222a1c8ac8656fe98d7f9b5088a725bb3889ce24da112f2cd88575217ca6087cfa659374a82cd7cdb63b47c3979fcf094b62ff72fd4f0adf0750bb3e001ca7772f0733a5fd15e81aea1abd929df4cb195760cceed8d76b20bae92244c685b6a74be268c64a8960e1d6ec3edb9e70986b77eba84051c28900ee9b6c52d4cb6d67eaac2f5cc5bb79c12a5cd23a06f8605b492e28983443d245c963b81ddcba2a561957786a3698e2a0ccc21146a95ca4d7e4cfe16da4b4738a36c95d42f4a83217ebc7d5d1f17ddf5cf87f8ec8de65f0e69491686c973e69faaa179e52a828863797755deed4c1eed27d51a8ba25fb0821b33ffce69425d27ca2ce73c7eb9bb976f3be629c5608993eb49acf22e78c1002ef8d53ba36ad0b913887a105c0c5cf1d2561b5c9e3101925d758039f6d27ab42029d5ae10ca096b71e4cce05b7f8f3cad02f08b6e2148a3cb5f12f5577f52d118ea055b47b136da35283cbc6ab9570d61b54af491665d9bd141c2a11eecad22b00429b8c5d7ca9c94907429da625315826e99f3e61537a00b554228975cb593bdca2b28c1b022e8f4e6b61694fa934fe35501633bb8736021a08f58deb6d3d462fe00b7e9b5ccb7e2f065003b16d0e54c66a9c9d33966135e410aa0bf48f59949771ebb1d38b3902865fc309e7c25bb5b4b7de8611ffe178877c31a8d1b191dbdeed9a2348fff1b6217553bd30d3d9b7eccbf64b872b26aa811199c76915ba43c610bf4169d8ffe09eafc1b0a4eccbb64a031872ab1b3e7a9b9d9cf1e3ed1a1b6a5b4a32ab67edab8fd693360c62c9f34b00dabe47cf1e8428e28d1202e556160f0d4b6ab524107f5ebce2a4782061503cab2a1e1aebfdfa22edd4536dd051a860e9788a5a4691b243893ea6b8f647cd9094b643b9354a600591cbda3d762e7dba265b9c8e6c338151709322a51d4389431047afa1031d18aa0bfeff5d1bc28c5e013eef0a26a7f1eb3c4dbb12a215882897a65608fc3da16a6de1ee7349d9853f6faaed5fbd974fd051627ed762f74341c6ceb06d4d4d635f599aca02471ea5e3dd5012cae344abdc3f990e62fc07aa325757d1bb2ba0bd7833bbfd1ad4aabe86cd389afffab65c73df538d6f9b2da50b9ce1b1be4835f85f2d77a01594d35f48b370b0b11516e8913aef45196a24b290c7491ef39a3a6afd3790b93214837c3247e76ee41a4bc1539caa78adbc5b49d471a9a1724e62c5192ddfca31882350dd906560cb257c3582c4f294193dee760a15b35c9b746c690a4728acce6339496aeb75c2e350ec68acd49683d23140feadc2dc3eb118a8e87281c60a18d22fd12998c4c3c30fa76f9c76d1a994cef1dde10e4b5554e4e4bb0d164e3b85e5ce16cac42403d3b2c687a9ac0b8813a5a2ff6fdfae0c41d9bd4da4f2dad84a309ed3e6f353e9b29cdc9bcfc0c2ea73364554f5f9100b9a01e55fb3d1cd857c9f42378a3ed6f32d87a9cfc4c8366d6a28297128226b6c31612f9b6c1deb481dc930c417f64eb53cf74abc5723375e6370498817273981af928e9d64c2e2c1f7aa46039f2bea921ee5505cdf50f5c18d0bcb6f4729936e9a0ac4cdd2ed63138e68ff225a93b21279722f0174dbdd83b7fc3f6e54f602107c099f18d31fb5d682345858d154475ec38820fb3f9e7d340e9757854944aabd9202d4154b3ae6996828474f0cf82d9162c29706a455253e2b7a236b7c54b7deaec10ac95d71c93f7ae57751c75a98a59be69628454cbc0632ccb25faa8108de381e12cb18758648ff42225d26cb7c3c78745b0fbd371480f58dbae1e32da2f5edd0b487a6cdc0200536c3a45533e91b3241f2d19b008de02891276acf3194deef6b28133da6b7aab644ae69e0d310cb29c9b100eccf9cc2aa140d718ae5a7bb03895ba915f2ed39a681152c6567390465f33d6addfed145bdff55795af7fda6bebea3c98f9b4d0f9538c9513d80c39369506638ac267bd2afbb0d0abe3c44715bae6a8f2fec7bf3178a5c8821c5a6b32692f13153c364ce41a6e6e9201b733bf8fef31d33d058af4891138acd31b38ed8dec427b1f5b29455c4721bc1b69a9fe0c588b134831f57c64fca00fce1b582042bf68c8d4f05e27c685c81677ab6331a084fa16f6df88a6a6c161d4a2043ec2e2586bfa0aff858793f41cf2003092e55205ccd9084422d53245ee37aa8f16604944051fd787754eef613a5b2a0893e0016fd00e7ea3b13c6f6a7f22ef4346790b5f2d2c0482eca4f59441d488edf51a5e71655f2c6a7e6f348e8f364ddce5a57e0252a6ad7dc6170ecd50b267673d3054b53f03bab834de4ff37dfb731ea2a2d678e6791c508b838bfa9f274a8ecf5f499ebd356976e989cdf7f25010cf28169a56ac2b2664bde64611273af5b475546b43056f436845c7987a986150bae9121485ad36d2991e5bb14015bb360a04d989dab9615140841fc55e6cdaf73c914120fc6fd8c1106d75305bd1ff6fff2318ba444caab42268716d5c12dd5afd97abc3a048f3feda20622c1f16061f4ded6ee023bd1fa87496081c08f4dc84d946cf0ed270122b6c36da77690db383187a0270e5e9dc2c7b7f13a6548dbff4a462424973e424ca4f16ee07956527336d26d86a3810b4747912d0d72b66ae8c5cb58c500f6d48c07479d74ad29cb2107d3bc2a0c67ccf82af7e19734902b3f1092a515f71deff0c98babdf0c6a06104c0fd996567bcb0d4970bffce62889c6847316bea599d7a2f35a19adaa500a0aa8c8f50bc44f80b4a0a0f2607a8e78dbe95fac49831e0d54c57b415bce00047d12b16c50c511e96ebb39271d85653edc76f3099effd558bd90e7b8fd0a5fa50af4e424c37c9ef5e907051e61b08ddfe49cb318c37dd5978d0f11672efdbee14949ebd178af583860979deb98354bbe911582b6b4b22aedc7ad1b9e25f4dc500362ec7531789e5b84420d8abc72778dbdedb38ccc1e9aebedc8aa345a96e6af55b57e612d7438aeb0442f5bdaf696a072b72300930c6321bb3f9f0a6d4e42d66df2f3207822cd8758cf349ac1d291a474136dd7506a5d65446f7fe6d8abd942ccc84e93bb12f705d92cdc51a287ff98fb45b4a08f89283b133c14bf1840037118a5d518fdd4fa8c9e49d94d61959db5e8d90220d531efba57910110de3585b4ee4ebd64f89c745ab9d713604092aeb735683dded3de2da3af777371e6c678dae6c86ce8a28ad22cf02c2884987c2f61b2fc764eca2e3f515c35e6697f74243d3a2cf2f9cdf3d3c9cd116b8aeed884d3ecf7da0c1ad282c561f17d59ff9991ff1e31631b5360493f01cfee17f40cc18cc4cc77ff85f8762b6c8b19618f7a916d8caf1e3f3010e8452e1350c0091cc4bc5e2e303a9c3103789c534b511dcc56f895508d1103cede5da804a021cbfc9b0a23025ee40d9f23f03e1c3cdc1152adc9d5fbb394e6ae07202cfc61ba4b2186d88d13ed722afa5543aaca9bbccbf8d972cfceb33a4410947082a56a2132cfabec36e3fe9b18f3a88793e5e64dfa8b61bebcbb952d2c3dfde8e54f7399446e61c4c481f4d25c168b65234483f36daa99bf034542d3354ea93bed1f3770570f503e5e59de2a8d3c61751f4a45d52ee887390a7bf2821219aef4f1fc2746e30decff269ad83b7dec01278f4952c759efdd02e59e642ad22cbcf1819a199ade65d76d75123b011a29b807cfe988eb2153b1cb81a9f13a7b23ee5f3372a97b111d59760a3fc8e2bd06a775553f7b7ebec7fd0e054a00a9eaf46a6310393ee387698ae80d180742c42ebba50ac3a3c615a84d9f6d1077905dacfaa7324ba6f94e88df6ab6898780b2809af5e8d630bc5132d1dc8e0b741ae663a90588d92676b261994c2af2cf4747a8314fb022b0d76f74a518de290376bde67b0156c880a8208b2fd5d22992e6978aa2425865354c441eb12d8c1214afe5531b64920096257a6c439504b8e6d15c5e8abd7701df50b15b8068e43472dcff88c800bef997a76bcb9e6f120d9bc7b302d40685f30c067c68c2db4ee3ffd1d7f146baffa2a9935a07a6136a237d3808ffd06c69f40cff61573fbe36e2fade8bed56a833f86d", 0x2000, &(0x7f00000008c0)={0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, &(0x7f0000000340)={0x18}, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}) r2 = openat(0xffffffffffffff9c, &(0x7f0000000040)='./file0\x00', 0x185d42, 0x0) write$FUSE_STATFS(r2, &(0x7f0000000200)={0x60}, 0x60) syz_fuse_handle_req(r0, &(0x7f000000e3c0)="7219fa4736347448f0d1f962fdeaaa2f4e9565d9ba0765be302453af50403a86eb40b21bcbd77bf4c283a6bcd479ac2c234ae7a215c9e5764af76829b9c3d50f5f5c7b6c2390df2b003da1a236837357a9774f3870ba1f0d15b06453e65ec7356f9d694fd1d082bb765691c94cd946601128d3e84bdfac4e7a29261a1b028e5428bd784a1bf2d319d4369331b66b6ac77f295881bc717a69897708f4d9eaf8b02a6679b81fe53503714d30e10dead1b02c2c73af47ecbcc2d8afa86b152e059f632bd6f7d86f180d7775dd3dbb3928733b20d0b8e568ee0ccf0c7c94006592817140a80384112ef5a2555dff2ae77173df629e420104000076ef2353c02511a910e05b3dfeee214754b2c0a169bf94a78a503e89ee164571056973c56a9c95d4e934506292254d0402d978279d96bf35fa53a6345cf7ac3914a0d1c3f06b1cb9f0427d0c2d42ee4a81833489843975ff4d2e9d44dbfbd6082589d0baf183123cc821b981bf5ce4576655094e5c4ecfacd9608194fea94bf0da31e3610509c215a4cd490ddad06c0bb5c9a1779eda18b6ed5b9c761931ebb4f220776bfa7ba359650c38a6628dcfded61c8267d1590c8a6726a4039a2e7b83a1380197ab04e49f11ac215c4458fc92ae773ce33a3f058da0366e4ab24d2d9cba0fcea8a29491cdb25ef21efe9dc233323b07576e630ab3abb58c1570598d1c7739680247f855b8d4ec1a3997e6b2a04bc9a65c1c11fb7594504d503d4f1a79a6fc5b15c76f54681cb8acb1efe7bdd30470f2fdc95e1fb758267644d2831f51792bfd2cda17008a94cb1dcf7eb84297ce9b8bade982234b12be0b01523078483817ad574333a0e8184876d3794f44c7da1eeccea59bb261d12efa7389251b147cba04598f97d4baec8b7b4c6b799e0d7481eeb7dbb235e65f8b6f5ed6bf46b6021df25b3b73e9771269c7bf06f95debf193c2adee6ed34dd1b545a861819ae58e3b7069c6988f7c28d17676d41ceaf1d932024e70f264f5c7e5956c3bf0a677bcd59158e5c9942d4a1981893c866602d24d4185130c5b11f70be0ae8f79074baa3a2fe0426614351a256dacfaa55cfe6aa71a76ed18a882e5479c622653a98a50f435bb8b22b05ea16a4726c0555d92ef843a174fefe39088ec71911adef38ddf8005f3635bdf91f7002afa560179c1a7d62b28144c8bdfed330d3efc79ddb887f1ee4bd3fa2c342b6dfc0af07377cdfbf9b91616d8da2b3857d165e9bec14a304ee4566a3b709b9621918d99d6291deef4e1a1f04ecdcf0d92c0d84417b2b2ae4545de22f76c2528dd979ca1c40ac83a37a77794b07337a6b0aea2bbdd028275c24db33001aa9c6e8a37040546d9013a9889cdb8950169dcaa657420200dc523bd940757330709c210f26f3ca8fc5c405d4d3033fd7f8188e6909abb283b582349b83b01b766c11d2fb1433c5f57dd682da1013a4ff17c5cbf2907db7629fd376b3ec67bd1b7ba2f06a3e0bb23e658018dd76ffa90af51940fb5fa73edf117a2bd2ddcabe0bd96ef7a0b702fdc1125c9e6d873566e0f8b4684159a54e41df0fb0fd972216a045fcc086da525ae1929812d4e0b5dce70c08479be39590aed1ec9560e80856a40f7e4e408c14ca791c5bb234cadb58af2c8c20d666311b828a349ec21bcb9f1d9629b2a623e9086af804e3af32f6046437ee434dee9cd1a0d42e0e78eebab35988b7f1c8327f200a5dca16290f34fe3637bca69fec029205a55bb3ff218648c4f31f558f7d1eebe2d8146117470ba8d1a6794326fc92e835eff7a33b988a41c7492eb4fa6969419142dece6f7a7a9d404387762d813c4d744e619d896689ac9cb194dd235fe24c567033039b9afb9dfc77f9fc473dfd0629aa22d92e5bc388ebdfa6b1599f281daf0c464e34340e907f2b4a1cf289ae93628bc60f9c71ada6aa32ab1b4301040b1e387971686c68bc9eceaa6686b93f8ce396a1db7e8d92d0e2c122bcc9f7e8eb79cdca3036d5d6f69fac8e45576229f40357146c016af09951ce9c9ec08bd658a7ad0797414360844d0c795a9695fb76e3e36723d85c6298c7b6eebe03ecf5d44e7083b99fda4c38660d0e250816de5b44ad52b85b9fb2ec07ef99d5cf69797533e494a9de1e266315c5dc4b5303be9a171dcc78bf0976726b342442bcf118e384c993621ab4d3817541a4299f26274969b8aef3a9a27a9537073c2af67dd599ed87e7ea2a54efdde32a8c4b247561e318a8bc0c54111e3c1e88a909133b087cdbedb007bc318bab81046e1fbb0551bbc33130e1d1e44f74fc90fe3531265f9411490e902fa016acce6ffe9dabb0b866aaf1af3d6dd019843831bf04a4826b6df273af7f527e36adc5fc122e0c6136c80ce3e9ad0e0183e2dffe942efc5a6feb166fe581e346c1e1921626ede875ca2827b76e053e735a00da39dcf034e8f0ed197c064c048e3949a4dffe8aa1998d94b63b15e491a830f037d45b5eb11ce15777906f877336e852088400604bf084fc0f688356b5a9ad44094f88827f3c1c29821bf16baba51deaaa4977622159c2b9b7a2d80c50d5682d1a2d337c6c0e56219733dec802de90b0ccf3bddc07090feb4f394be70bb0adb4d102700bb8436144cb3d09c3535fb9efd287dbcff5b6233e6cc380eb90367352e4afc968892456f30e91ff906c4c818fc874072bb66d73c3d272e69806a94cb35e634d21fd8dfd0ee6de054ad8696e15fc222e064291988518155cdddb25f7228d7cbd6bcd347ed5c453221de10c92030e1a1b96b8aafdd266dc6f71f390ed7c143d2169feec70d850a138c661972ff8df74a053b96475e473bb4784d9a75f1c1ac78cc8728a84f762806b4cca78aec0acc629a2c0db10e4ae8c0c60e273c04a10a522d0fc12592ca9070fd4aa263dea5072aa1f286aa2f00cf94fc9b81e4de59199077b5f272e113a3b6c77e6ad0dce3a28524b934a699adef9ec2a67b5baa89056d97d35807e43dfd3e329f53223c38abd5dc31f66dd785287a5c8dcd9d2151406ca88c10e99a807f035ab9063c7e8a488c9588ea07db0bbad959932e6d1c89704af0d999c07615bca6d10fcf6873fddeaae71975f6115b792ea595be6a57c9ea52b41314b1e6472c82d091f66c18836eb8c68711ef042070545040220819e940c5f4ccd083f0f2b757c8f221a3dbbec12cacd2aa7531bda0fde96967b1b683a9e8944d624d26858233aa9f3104515182ce59929b94291eb5c2d695e4e6b7ecf30e5160d30c62744940defa7b455625047830b46b64a70e4070c3e47f42708242d62df081947cc7c13454447f167f2b59013a914eccbd44c40200e10279d45a2858703587491d13b3e816f515017b33ca0c7157dca8c8dac532aa8d392762d03034fccff3b906f8453e3517deab48c6e8b78fbd283c8515ad00c96810890d205d8052566d4d204f48a759877d3979ebc54d0b606a98746aa97a178c19abb68325de656b508a42c42c1664db915c687f47a75210764898b2803a3bd3f82c9a6280044059cc801fee406a5a14093b05a12ab3815ba40cc1182020d83386ecd8c1f2944b85b27b639f9df5aa7000481178a5894cbe66ea9ea8da50115cffa32c281c598b2dda88f16f51d7a1e75e0417988ead7adc10b033d03a41601709530799f81b171f7b79eab121ccd7dd577fd068cc4712c437dfdcb77b3981efb970d72ca32589633a9e42e54a79cea76bef83a0bcc3847ee6959405d37af73d3219a28685f71b337c6f72584bc37c4cf018cc69fad226827a22b9d58d41dab6fcbc056257606d8130094f29cc747f3338ec6cb0a6813986fc07fa10ee0b4dd4e228c27f585c2163674fd671a8dc1a6aaf56e3615802105cd827106b3e88a33179b3ada9ecef3362f910c818b6dbf4420f76b6e3ef168d2a60a88cdac79afd888125c475eb1a8d1b1b1a217ebff12fa89bf9eab76bdaaec17bc3d7dccd428a68db5812fbcb5a9d606f4c32ca2aaae107c817279be1e3e09c1cdea961c3a117c3f077ee575e82794a5f01a3ea28033381bae411c9c6a4edc294ad368bae0b363e8f0d027950619474115e655feb26d8b2f30bc159fbfcb824f863bcf7a8210eb38e22db77af0e24588a490add45b2747383883fa7feb5ab8797247db2c90fa8fc8e609b0e4028c2a817f6e97b09e18559cd7be75e6492f2bb4dee4e132ccc5681ad0d46950816b7c0d0191aaef8040062d55e5b8d8ccab4fd0c2f2a9ba3526953921126149554d10315de2055a974a081ddc27996607bad5b9e7f2676187f4304cb1d971363416cfb7881f8d48121217bc1fb118ac2f77af8b39084cbf8d67e4953527d1096d145fe4bbe8703f2321e1bc543d859a21d6a13a808ffb305657dd9336279a79f213dad1d3bcce9cc1eb520fef519180bdfde1e57211ac30a0036b96e93a6045d122aa03ef74cd480597c3787a086a8039d1ffa5fb0073faffc82d7561f34deb2862992ade9d30dce49086db8a5bb6a2529ea3408bd19441fa5c97ec68a2237c316d4270181d59e7fa0ec007b5fc9685552ecfa88f4ae65b48bd13fc9a4a78a84eef52c5a90d4988cfa74c17031ae03588d949d56641fed28f042337c78e4e084a8fd316c7e88755f209e596c5e7b21e7bcd74c26cfb4ad96832b9c3de224d1f7cdfdde65eea9f2ea98b27cf138cd3d959cc869027291e6dfcff604a3847b69e6e35be24789012da813402e9f37b3d512a62d1e255c29c68b956398ce73ecc449d58064247120b58efaa78d50e94568bd2d4c9d56a9159483caa63746c36b0432abfafa38799fd9b53aa9d2b3584b11de0bd3a56315d41a160ac1578f999c5102a0fe8f47917a200091034aef7eba15c293234671564b96aee60df9e5a6fd19ed9f744a36aca8414852278463d753e8dcb1d968d4380c84aab6df7b0d7ed819c9eac6fe59ed53998c8d3dc44a8bfda2873c13ee9016877db99bae02e44ca95d117de51fe66042659f9d63c5bcbb20e3962f2f9555e9315284071c2dba086dbb49a964ef43104abe8f1bdcf81825418963ea894accb301d5be4019608938cdd6544c5d99821c218aebe031cb62ff1107349be067127125a57f1267d33fc64c492ae4aa43fd45b1d33b2b17415a48094d40f7311fe44be73834d1ff73aae7fda9aa2a29c41f4e7e97b5a4456833574d2dfcad90ae8abd4598af3483fc243068e1e2240a1f64eb18c64c3526869a68f33f6f6db3a79746448097686a37ad68265a36ff4141813e4017b564070ceefebf08f9cbbdcc6b506fb3427e0c951809dcb1fa06511760210c8ddd26ee661c9426dbb7e9e526ae602c03960e6594e47e6ab029b1cfc0d7642456c7c20867a8a0b6ce87fbb1eedd00a5610b691b2a4fdef3e3f96b5631172b88b1f37107988c8370c30e36a4ece3f176ff49605aa69cbfb0c6775817e3daa04c8ed033028a91373b2663e9eab3fda20a497b2d14ad4447e095b032cd4de59ae784c51e6cd332bbe833050230d012b1f2475666c854247f19011b3dd5970d8d3dd1d1e74ef0ab7825934573932b37b1345d66aba8e9edaec13411578fd7388ceaeeabf0622334d7067b8710422f7b8eb2a45cb0cdf5f9872d3d14efd2d818b8fcd37b3ff5bb21f2d1e388839d97ea97d2c3e15c9b4dd05a03f2a1f4c6f6450b2925edeb50c0ee631bbbbdceacb52c343b23989f7d7e00b8e6297cb5792cb7299117949a5854129f932c444cf7401723fad23dd4bced0da5baa36dfc45e89a8541eeb432ee7f01a3c6cf94d2d42b6924b03267d2ed1516659d3aadd534fdda378b028d8724a5329a6237038b46a7fa621d052a7e35e7d63b954ca34908d1144007aae6def3d069652a76c5e0c8233617ed6c8be24c26db9f7732dc6af173e05d6f8163335ee07966087ceba488a24a0f62fc12ea47d728794e79e0a20c1648583b203e98770be9feb6f5d0f2bea1495e326a0012c3a2ea8021315f31533f752c61edd073f1283e03d46d34460eb623fff130a57ab2a0a21f9c7c0eb147bce5692f886827c4cea51d87ff9f31a250b38ba4d95a71e874f05744fddfc7ed11a045fb8858be2618e6f4f75696305c1173fca9297fffd105bd38faca2c858d797e573baf3645e0abeccdaeb36f2bc8b1380a38846cc0c80789de54c1d6e6ea344c75b18e58563909a93c41542493fbe25d063a2110f21b08239c4b8be9d24b1e0b1eb9e5c832e5de878d091c475537e6d1baa11214020842ae5c4824e11c11df4ebec8e0dd937ad9aa4c6285688157d465575db9e2bedafba02a2c80d502886343969e322f1575d90f64a0b163ca560ab853a1b64d5246bc53c99466289d3fa43c31e2f8886ce6f55dd2b327338f0266f16774b85498c815a75805efab0add1c4361d1c217f36b5e18c8b2e1efa2dd7f6d1ac695331111b17d665299572f09dbdd9e7950cabc951c4cf7d2cc0e22f6699f53e9573826b420a013310c45690874c96fd0256875baf3f88f1c824eca1c7811501b1d0bd292b105efbf4fa735210ebc62302670bd80b66aa499118f839b17698898492dd6d439c29066bd0a9ebfb30bef1ecebc69472ea8b7c98fd8e012634206f1f6b98420f383413177188d3ed26c13a8564502820ae6752cddf7b6477a04fef130b3caa8913e4787105a9c7e310bf059ea4006630c9603612f0b1caa83c5609cc8b165fc4b14a4b044fa6b9b6b4ac0fe88954022af217e3f5a46f0c075bb2a9d6edad593c295d40490912403e3c461e9d8ecb379427bb0d4f09433ac282ba55ee4ac5fcb94d866429284fcb826d7a93a052eab1dfab0345b238b15d053390f0879638e5f7f9d6e2831fe62626b950141b9cb2a4ef32475816653541f2b74baa0759f1b155d12940b2a34958702e140d98445d0a038cf8cef5f814a86d599613c8a975832710eafa278d97c943c5c6410f00854eeba2ebae6fded67af33b0b5189dcd8d6e0567a282f614655a90bb7eb6283c9a2f0dc132f5a0a2e13e76dca49815170d090be93b3603c3e1ea94efb58d4986ecd452ce7f9caba3567fdc38451269dd5c0f87a9e18f4b01573bb6a27f4665fb964384d91ec1f89a32526d26ecd2128a9e83d10c6aa2217658cf0f34840a7b0255ae3d0ff85a6c11e9f9683a211acb96c6ae196ca830aaf21d97efbec9d88ef92139daf87818a55ddb07717a79608857746770c3449a83c0caba0d841c0791e64a84bd5150955bc101c853d30ab995529340f54b29652d703071628d457db8690b792e25c476fbcd1215f51ca8d60c9556821e9e2125468e8b25637412b206472d757f69e07cb19acfe5338f46bb4917bd748ece5fc62c66f5db79a380da8112888167948325d0c031dd6be1d79bc2facf4b34fc80829dd5c4effbd90ccb08d397c474b0824cc5865ef9531c88ffba1f5a2696e2343da74963098acc5614ced2248bb83f7371672b14bb7ebd9376ffe91c8ac7c50a95da85d804be81cf4218150ca96a4739489ad7bed2d40e26b5bd45aae6ed859608b509901a0559930c5bd2fad3451dced73cc79da05d505b9189f3f66d4d7fa8bc1311f84751317802f6c97a2489ee029fe17481407638228ae266790d199256e12780c5e48db4bde2a548cbd6bba52019f9611c589c08eb2a2a17349f51956757fbf78539ed9e57ad04b8b2513352fa44b15c5fde5e737d8c1594a6ac12ed91127a13fc3b7b35d000877365b098034fc519818521503443f67a9c28e593fc9fae59664833beacba5be1939b071ac1ebdf03e75b99885d159763600509d22453fb26421b9a56b72c79080e0e155450c9312a0ef996b940e5f3e25c4129f25ac16a86cc86a476fc74bcb29a19294bfabbaa38bbc44ee16219e559251f1892a57d3c0b7cc252c28a9b703baa19fcb46d2241ac0c886d524a6bfde9b8e2827c26ac19d994035342dc96c08d20377a476c41a1564663666d3e048b8c954d4c30f391241539439074fa429d8c3715b71c11ecc2f210792e1fafcf89796cf7e54264d6cb0c17f80c1766e079234c500e97c9ad0db4d6fef7b366ffdf057920231478ed7e057b166c627a7a0e725f1864fd6382edd47cdc500f86ee66531ab35afbc1687c354af2e8ae95b1fb5f8516560a58729b7b6c7b3d506682c7f03716b9a53ce7326d8e0dbf0d9b0f1bde90d68472b3a10495f5284f2a9c737590c6839ce3b417f59720ea733a3a1b66066adda9be767f922bb7a9f1864d9836b681e54e25cc7c5880fcabc027ee2e21b8f1ea94c915f243c36a75156f4a89569096d0b0dfe9aac98b1015123aa95f39d00e439ac1f0971345ed4f8110d65296aaa9aaff4051011c272e4a21e73d801ca0993eb893693c2bfbd40c189f9baf00e3371e023cb21aa2cb832b7e87b2bb2b5c733f3c02103c1392a9b7555c73f86a6c19b99e8e4086c11ead1d50292c69f6a97f9da9111717cff287bb8ca585055d75ec6c32f65444a96e99606905cc6894af1ff06f001bdb62dd52a38ef199bfdb12932567eb72b06d9301a568dca814877fa388490c9f81988ecd6d6b338a2724b0853ce87104c61c179231a484fb9dfae9f5761ba0337930761d413aa87d3096032e4f71a55e25d9f873eb689d40a879ca5188001011ac803fdc95331d3d859182bdfbbcb81c101886de05cbcd9cc392659eac2500a81ad4d785a7cf531f9d428f123836f5835a1edfcb92c67e84920530c4d2f6f9fbfc39d8eb7d2c840122da42bfb2d15d11a647a7bd27cea23a0bebaafd34d36f5ef4c7ae53f17dc9f2b0a5e33ef5bb63ae2a15a795fcfa31f333858aa494010acfe2dc0781138b8e2db7f58bf7cbce9da33b2c0836183087e72292948ba38943e31637bae8c77f18d455e100a70433d3d7e7e779d65fbbf5d112e32863a2bd31997f644491f858cfdb881900a0c69dc1f91e8714a43ad0e6ad999a84c8e93a4bf3f29a98f4e3402a7262f0159c5072dd09b0af7b6806f0d05a788f1c19855aca18f9a14674b03ccf200799b1e00b2e3cf7431a0f4c9ca3ce2d58642258416e705920a60eae2d306841125358e83b8fd9179eb2f4c1f8e10a6f86a3ac73bbf7ac751685d689bd181316bb49861512f7c375537c3683aca51ab222dacc2c537be6505469b21dd396182c919b817bad13bc1a2880d7c4662b27292b80b426d9b7acfbc26f03f7170cd18489de2e35a3d4530ceb090b52a2fbc80f4a578fcaaf5f38d9ce3601144eb7cb36e806c9b38de03c5e86e2bae5674f32d400b1553fe407440fea7990312bbc2eed3b7ffde10130fdb85a9d1262e2228438d231999e49d8b4d8c8100ecf31df55ec0b0f86f1fae08e8f9d6034f85ee80d9307110f060c518eb86b8e021ef7f7898f368b23418170cd7a868ca3ebdd8de4e3a7873c392917cebd90d1e77cb8cf2ef65209e95e41b372377538394052b12b053cfb49cf04dcc3524815d036fba1fce46155d24f0ff9c1f25b58bc8f859b0f1622096ff69359cbb6cae2a044a597c8e90c97f669db48b7e9a133dcbef63a2ea1adbcd7eeff057e94ba4bc46bc193ed5cce3a0719a23b95bd95916489b9a2012c9cd04f46c3f5887e27fceaea8c16429b0c70df2176f428e3f0f2d7229303fd86fd3f31253436ac633141e279e3f04bfb47b66e25920f8d2c5daf6273c62391e30cffe094611f25ed714f3b2e5d28656ce77bef05d1472600b8c6787e9f9a2a7a3ec4a5c75749fc7876bd637507b81439df28759fe56461daedc89c735eefc5feb3094cdfca1e9c44ad696cfda82703d6ea11ec44a576214d9f7dc891d6d2d3998da665d10e2c1c807d248df651989a41e1e57402c37ed626cbfbd7ca21a35757ae7a4e739583aafec17b60554066a63d521a4c8906e0f56f85f73b0466fed9365966b89c778975e751e3453017de75bd7ac55a89e3c1fe5f9e29d16818344ee40943518cef2cf8add1ab4cad10cfb5f9ef1224cc7c46a12d99d91fc5b7b86abd825dc548d394c8bffc1d8372a40fb011421767b1fcf99dd78a5a6d632e09c902a74278de288a279afee23940a2fbc7663619eae9a0b4c221b6819a93be27d7c4a5c14a2606e695decbefaf7e4852280ab69c4a87823cb04caa4bbd15ca479c1b7eef13ef3016901e08da041b7040f0f5fc6b64eaf12c00bec8e63b9e974671dc8bc3d9fd5374a800a28b88d718c8cdb4281d44c506068a048e112b9e0658a4ebd099500205e276cdb05b3162ed6324c8242901da16806137e2a523e8927a90be0b10ab1e708299c49e7c4944eec5408ca990dcf0d5b7dc2713571f407ae6e35181cd0d705a1abda0bdd82f5b3b1419b039db926086b11e54068d3bd2481fe5d8025e09b72548fd6c10391ec45c7fa2765578c6a0918b7d6af2d8dc79acd2b05ecd190667b77a8d57234fc62ff61b66983daf5c1a19bd47bc2b626cf2e3a3276436855faede2832e91ea16b26a900c3e43584e2c01b2ec986d0a212428146d9254ae7c27fbe2e9fe18d8dc5a0061542e4d1ec14a6febd43eecd6a4ecb3f0223fdf5dcffc509161a720d041598c6fcb359577bc8ab447a7561c71b0a287242430b78cde49c0e037e01c2f28633571a9284134539356766bc63964ccf9051b361d7d17008cbf9b2c40ea04fa3cb0f96517acff755509592d03841660d2016c25ecd330e62ea1df2385a4ba04e71d91428c437f5cfd1ee3040899b94a351ff936bc72b874f28e330afe0cf66e37c39ef5c38f34fe70f981bb883634b3e84c336b5fbdc0d153e2a0673ce4d3709f35822902a2428a3ea29b6d92b81f4b7de6345ff70dc8e3b4c47126b186878107cc2999c16765b52dcf48056ccc23d6623df14be4542facdb654e3edc5a35315b65132571b3db199be785b062a3cfbf0f3aacf18ea274aca3c30265741d006abf0c706695a16dfc5a079cb38d0f3a897d3c09ec1581aa1a1ce91da5840507699537b9a4df9a8c25566d8bf4f294d8007517af43610732734694cf884c53e9b6840d042a85d42355bf9f8fa718df4dbed3a118172dc3da9f4a8c53d9272c4c93e26e8e47686ea77d469f0a8f7c76b773f54ca7dfff85e87f8d5b464fef0e4cdf791b4235b8ff02c6266a845679286f34f76f7c9ad67489f6e589231df5600ac902c4903c25e8cb9fdebf6062d87266d7883d93b7411f73298fd04e6569704b150f3f37df6384b6feec2fd656671a6a44b589ba7729f7580127825f2ec6605e002c3a2818a13bd089b5e42d14ee09e7fcdc288019125344319513906b32979032ae70e116855998365e4fa77e282a43cf98f93ef6aa0e0768ea4c8acb556725fcf41d48383f6ddfd62bdfc5b6028e362b91b9954c098e16a42139478a0ddb612210d67bdd808fd88cd33268fe652308c66a742f4409d3a42fb6510136c7f910a73b437c4daca57065538223a9e5a8dcef1b0682befef54cf13e36d6faab9b9f2aa976f5c01133d97bd5f3b71c7943db45e494416fb2d00f8f85b196d5307e22abe5e0d48447d5f9df003ea626921bc0dcca7eea8d1f56defa31bdd2f61792774de51970200ab06c703862d446ff22ca7024f865f4421c09b97d2f2ad4636d88a208448f8e065ee5c8fab93dd765000", 0x2000, &(0x7f0000000a00)={0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, &(0x7f0000000300)={0x18, 0x0, 0x0, {0x2}}, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}) syz_fuse_handle_req(r0, &(0x7f000000a380)="1889e1625e95eb60b81451ac8e88770e9c6915888c0a4dd7088b7cc0abcc77d43121799253fd56de16818e5c727e4f6254cc09a6fe59299068c07cf463bc0c363b50e42870f35f18505a8068e037f6a599bde2bf99e6fc03d67e952593f436717379e29cd556b1e1fa8f58071809763a2114725d528c1bff3ed55ff1e6f9496bc6692322cde7054e2785f74e47072e9871a95d107c054d33f1630edba16c59ee24d0430593cc918566799d74c5183f601be4fb2b227e4f0684a7044dfea1d724fd40c3ebeaa644e52c3139b6ac925775a27edfc71a7d51c2901e5173a08ddd4332b2ad90e730d586e5bd54600b9c2320d22c269c12926826ca32542576be6b7f4caa556a48223313961b02f836ff4f6b926acfd13e374047fc1aa59538e0832ddb7b9efd2b53a1afc39d8c345deb89581c4e6e86f5e1842a9108ff1f0ca26a896c596cab32a366fdb026881894fd3f1709ea6155b0d809755448e46b16edd342dea12c361e8df41d35ad8bc5b61b0fb0b53aeae91a9106f9644e9744ef9bec69f306d475c13af47bf6acdc0ef34722edcaec82d1bc7c4f350b161534c69db182d1388dbe14f013234c2ea1e95ce6f65c4ea8bea4e36da6118b12f672e85805265ecfd4b142143de8ec19aac8225730975755c311df9d0f3b80020576fe50e1f7b5277c7da314c044150ac097fa7198594f6142e84dd958a302ec69c1ba51b5680eb95a38cd87cbf6a75db8ec3912cce3521cbdc956c39f44547d42e7ccb38d5bad937caa379dfca870bb7e5b9c6176e714c6895b95c2a7c8368e76a10e275849f242ccd2e49fc02ed0f060723bf37ad7211857fa4bda8723f696c5d2961b1c57a1eb4dbfea9b39c289a6f573f38efc70acf329b9406c64fca8b16d37922eef41d12fcd3de771701d7bf2ab09c33efd4135fdacd3ceebca5c3c73a03fcb007e5d3daf14f3c51c94a0908b7ff56bbc434a3fb4f727a410f3e9a2e15434dd92586ad5314593fb944fa1a0e3190f7c5e92273ad02c273e5e137bbe4b0b90c26cc2f7007b7791f8e5ec37c178504c7e2de852a01337f883f148b2a824e66103545fbd2a9366d6b4de5ebe1d9f602edaf9b2d04c09e47cb71c8d4f9eababb68e1036c9231507a8709ba8cb758d34ee7924282fda8d5a972888608cc7c12e1ee97aa4a99ac257708b6a498d868aef823d31472b7618dfdf644dc58a602515d630a772c68276829f1d7fed1e3ef98ffbd2e686afc171bc8cf72be235dc2f3b2d5376bbd7eb4bf0540de21c289a35e5ca221b860c8f40b6c31f6b9c02257b12b8ac2dc86a9aa1a8df7735e87a83c48c353c0a1787489f04c4cbce92e9e974f796e33fff22eb6cea16b4992e29962da70a50ec420ea5bf1a6025018eb4f0372809aa69c7862d0e45ee6132da0a279a59fed7e45a8de3834c340d481bf74dd7ac16ea2fafba8a2ed14be9961494e04a0d4248fab0ae65e83849445bf0ead114124986e01f11a021bb2791f4057a684874cd0ebfa88e1ee726e7467fd729cd7a04323f5a1bde56560afeace8cd76978758298f82d3f40addaaa44ae30e4b79ef4ca9d4f29a55e4d151ac662f446ce819124fe8fd8bc5e24040d963bcc3429c80e05bae5f4134423e1cf329f4d352f05a8bd88fca5ed09e74a68617b5ab52b710d6f4f27a65784f5b129a62df9a6df285ee4eab2605e983f19bf4bafe58df11489722505962b972965fee5f04901c8fdee7eb24dfafac1515262b831995d7db03643939402d143d72fd02d1961e0aa69c41eb48a7aafc84dae214d92b8f167dc8da25fe5542973cf8771151a2e9ab83cdcd18d32e79ee6e8255765cdd80b676357eead4a06485dfaa7c33de93fd90cdeb238fa719075ae1cd48f985a56fc3c574d93639d0b6a90996791fcd32b698a11ec7825f28adbbf18e4f8eeff59a759a7de85c7def3ffe8770b35f82a8a22bebda1e26a386c3e65fc94e08c9f47ee21893cfa05f1fc7afdaeae9b0750b8739d0d06f5a7fd78e1bc19cd6447c89809a141f7975523373f993f5e531f0614231dda69313253aa5db912e3a76e8276afb93085c1ff61eed88600691b873a71c97d9a0446a08d608242b2e225619423a6c4ccb0b3b61e0b79bf7066a330e9f412f0cc1ce8755bf4cbd54f3361c6d6d984485b954ee191012459e2cba5949c2a613db0afd172f16dd8b3740bc42dfe38bd2207a63b057d350655b5998090f8b0616e41e40cfd716ae0a45fa0aa1346d47edc8f6f4cdf86fa0356827bbaa2c5faf975e1f72b01b945e9a2c55cb8768e92a046f4e34b1b20fe237e9c2d9382504897bc0a7bf30562d9da4e6bfbaf7bb7292743ffe23a507c29864071af0dffdce6ee72b8c61dd5f08ade69700d22f2f4c3555b4d403afb59ab5e472cc9a832c490018216d4808f726287ed73d992f15feacbb212a4f6706bf908aace2dba1a62c945214a557451c81e3cfc9a0dff47537e9b817bafbf3c9490a4a6347224c4aec952ac7d7a49b05c0b155109d8c81e8b9f2f840e2b5c001ba389c18668e98fc07db8bca730700151efa95373a207457a2a2b75c732c4d7092d04f21962e1c4770ff1bb108658890077f657a81841b22a562e11a4858790f052aeb7c43fcdc375277ee8a0ae13d75a36b240f4b3c95d6bc762d5f394471065e2c9a92a3671c295195add13c6608df2cfd51b93f393615a5baffb03e9294d1bab37d4f62f2998bb803605f628dcabf0e1c7a31501476856d92345b04c39aae16b1b77c10209f61e6e5d7737b5763d76256a673c15a8a78c7bf9a950ac9c6f73624afef8a9d1cd8b82a98963f51f2eecaa6ef53faeba495240eace5e445b764e331beb9b2505400fd70ba8987147aca5865cce73a8b9ed6cb87aa4a404cf6ce78ba444af6cf7de32bebcf9fd3f6dbfaa796c9cb53dd76c066036e932692fd1f02a75b9bc8f3941c74397b58a0dd342478b6fb7e44ed485f82dc4be7bc43c76947a2776ce5b592bb64d56fa3e8cfad395bc27edfb35f6a4ad097fca7dff9fb4d88e80a51c9a486577ccf51375d507487e4ea63da4fe647ffb524b52834edbedb309259aa524848c11cbb9e1df00e69aa7fc4f9785a042706d3a6cc565430863a5f4385a1edfa40d63405f053ceb5df2f0db0de0c479888898cea5525a82d0972ba9940694df97f8e01427f41553b1ff495db0b6fa982588e6b2c6996b9e458b5862eae0a44dae872040c3a3946c2a5bf12c9c8bf8be180a13552248e8d37c915803dd79882bdb8e8d6e3a8179248441df7f79182e426e47b8fe60dfaef3afd9b8a3142aba6f583a355b81714ea6bae7f03d170fb7bbc68cb062d51355393a77e2ec31a43a1903835f4aca4238b5848881a9db314f8679e4cad5d155158a9d16871f8dbe56e4c5c72255b6170afdf0e1a471e1f44723efc28f9342bc464aac00658340cfa096c2eb7ffd1d5bd8ebd7dc65b960dda2e6e6bed23fed5e7766a1d6fd56b413d74363c7a7dc130d63891a529a58453d1de82d0fc4c62642a973fbc3d5ba743817464c2d91e3abb918bb00d36700b537fa2830f244901f3bed4e90cdaa8132b6e62420e1092cb8bcc2484a366d2005ffe1eba5f560538673efde171bb71c946d9df2b4366860cc6a0e5f00e2b6b26b098f20c3680a77079b2e059407a41a6e61c1f00fe9ca6287c4d4be228c7417a853d974a8aa8b1029efb5aa1d092b0c18b224cd0bd653cc0b7d94ace5effe3fbaa54cf3f6603bc9ef7e4708127c1435fe7a9e3754ac9387dfce94833a378fe3bc32fc2e50cc27594ef8702adff11c1a2b9e838065a7162758ccca298ce39bd54b250e852cbb0934bb892005626c569d202f290c12ad0c392a1beb723a37931544af59ddf800c117a690fcf33de2d11b0d61d7564d94dcb9e9ac17a0cc7a028be819268bb6477fdd462f07f4a8c3dc8c9b6a6c8eb452ce0e81fe4cc3e948b9fa28b85728949e1b75e22e0fcaabe03aa58a24cf95f91945bf68b36f3dc107e6c4fd68e7167b4cf50db316fcdef62c9c5ab90fd92729b37c327b2cfedff4dd6564c16909f788f69c80fbe3632a397aff5f085c91780bd8eb4eb3be5beff61e35b79811704cd71f2b8614e441013e4de3cba932c1188283ce765b68a2db49f1eb8d5e2cccfc8f1dab04677eb2445cf2eaa41e769244588627b8da8daf3b12d03e3329e35a5a0d2609fb4aae05f4916fdfcd79753e02087c05d386e43ea49df41621ce6fb592f0ed72dd8e4fa67898b14710d39b941f951a66872ea18efde4e264b31f5485b728cd381f762fe6c3a121fd434b98bff97726349d291f1adfd10e7d3d5a4e41533d9692bb6cf954ee9ad69f6e0df00bbae03c7a2e7355a71a2d36488fd2980cec95bddf7c0202375b01a6b25afd14bf23341d3090c6dbd1fda26d3d5192a3381a197e439b6e686b9fadaf5e981ba78d3ad89213554dbe2bad60a6aaf55eea48477d6c2c71c2a39c62fbbd3ada25360424733f8ff7e0134341f3f4f05ed5286394708d0ac611896e36e2fe0c49ef102cccd6597022d93c2cd4d0d10a92f7e7eb4afee39641989027cc343dec56e54eb0562060e20568ef4afbe48faf8a62b67934724445f541cdfc5110a22a14ac5ca70a3f8475429c22d2d0a018a50343cfb9e4ebcc63a58faedc6efef0fc905192d4fb5e3ef480ec304973b73cf738785a1ddca4706af01649247d4c279b9d6c735a63f049cfccc7487b9f162dfbd41d57cdf3cbb14410cf7058e50cfe5145f1a9fe4a816267c91829a2f3c50432aa7423a0656ab3fa76cfcec07ac18ee9c8bc0f21fc6ce77cc599ab2c44d85799774062d011c8f40805735d88c79d9b5c252a1e803150b32b852521e15d7ad27228430c4c8f71784d331edcf2497e905fb95eae5f8d47fcbf75f3105963044852ddb2e917a5b372da7c163c66665fc03012ff896fe713ea225a0fe4702dda79f57468558b87755be6f6e9b9f08939c85b48cd33defbb830ca915df4a93642fc3f783169492627ea98dcc15e673fc39accb379d604126b03754e232ed9ef3f2d241683bbece211583a4f3ee224dae3970a70bda65c1658aa53e1e454fdb26162595a0d12164b5163175e0c6db104506d4ecf7fa177530e224862c25e7e3dc771b1709a77611717b981dde90eed5425c2477e33241d179baf412395daae91893ecc44170d526f82ff92d9ceee89c72b77c5a7675c2db04e33128b5b1a67a60dd62b3ecd270b15ef302f2d976c8ce3042d2d7f4cf22f80acb219041ee0da94a6abe1e25c96b8790b9b982dde5eaff70262e06e853013f047c6c8283a31e9c71cfac58efd37d0ed53405bf50d9c576bdb05441aaa7c8a0ec70543d71a3d0be47e3a17207120c84f88b306dc1abc2b8c245f462e985e362f7fa80d6218fe234810de3db4ab551102f5f1551dde5aeb1e2d2b74196534120d43035da32e79ee096a83217d2726eace6a9e9f95bfd0b60e649b7705a6a42c55cfc6b5b380ef4e612cf560828f3986531f71c7c8119ebd6d3ec40213037f72bf561c4a6e0e327294912d0acfc84100c187f6af677cba57fac914dc28c7617142a952bc6a123a8daff5275bd30f354fe9719243e20ba40f74a46f2c1ce8bb719c8856f947473a5041f736d7a1a2ed679a44a728e8d2ef6bac2390749de18e831550785121d90aa3885eabda30d15541ece44fcc3b75b3097762792fefad7d7921907ed57116eef9c23e5d3d8726f6fc0b87044852b40c767a74cde375cec0be104c3838f9ec742f3fd4873cf917b003e9a25a1413ae7f54830840e12d4e0b4c34ed285b55024e78c588129fdc7ef0cb87593a0a475d1f0327d1b5cbeea0f612a30f253fed8a591708faa403a87effda543068a37701e82f11fbe9b8ea58934be16694bffaf6eb7dfc8a62ea85cef0519407805b7950331d563b9b9db8762467596bdbe883bc6a7cc95d227ed94addacc2b5c0b0c8c7c34ede1d33e6cb8476985e0bba05063079e1d6e665dfc69449d299560a34e246348e76144eb50ac5cff4f34985cabec37180e4daefe48b9b43fe1604e352201062c1def02443418cff15901006db2755ed69175d8da7ed16b8936861cfac6cdda3d20dff6bcc7a895687a8bd901857438ea12d2656b0401c8739b9abd46607589c7b3192b4f5b2293ba04bb06a825e558836717dddcfee651ef89f85392d58f169ba43dacc3d4a4908ff828cad01147459037161e8d64d1f7945ab6606014aa9b5d53b5830c2ac06a52f59fc3dcacc6535303ff029ae543f79a641e2bba29e45e1f99b17fe7c4fc9d10d94a7552379f33e4c87e95d08b4ef50f2c1f80b7198547268d154c428158d67237c997b7431a816246bd37db676051ac9b7cfd38216a4edd7109af878d33606f928a590784324c8d91f931f0e7d4bd6818ce9e8ed47791b7c5a09b718abed0c96a778c14d746a9e02c6f64bf74276cce8972263e8d6cb65620d7679aa80a898452bbf6b16e3a73de5c934d70d7f67e0e0cc4fe678eb36bf2ac4cd9af4a1de9fac9a320cf63f120c14d9dd6ce5c7177b18949b7ca608116f0f98eaadcd7d6bde40891e5aba4447eb3be8a10853543145047696c50fb510fad3884f456ea51dcd9981d39f0fedced8e5b9c28529da5c0a9ec1b41051693bc9b83870e156ec6f8bbe837a4e00b4eccea781bdb7dafb30856866cea19c8098f6661e3db53bb9bb01f401e727f90be17b7b6375687ca71567bb53d54cf28629c73820558c581f1940fc204c8fde88f212ea6183858e37d387aaf0b8f109c876322f04ab20d774a1a32ffd68d26ca9a1e5e4c97c7880537989df5c78298a1547a97c100add178bb90f1af451277a1940bd3c487346303eca7b219b25e44d6d2825b40a07e9d1d33f5cd43a420aa53c6cc7a405a4a2269fe5dcb5a17d943d0691e3db04fe20ae62c63d0b389b66940be57a765d26929ad4260f36a258bac797e819e92b546d82dcaab8edc216af2c4343b21809ef0f957b2c5787355649a6588a4a1a786eb84753160c464f3c466ea6f1724b360640cfbbfb581b33cc97a7021e9712824deb0223f43017f503dfc610d99c77c80713f24b22f0ad6a17e872a2c1c6a6d3a44814734c34b1b791900967bb5a072859f3e09798bf92eeebff2e246afbbe02600fc55818d12c4255ec7b0d06c2ba0851b3e5b6c594651808ea6ac11c1ac7399da49e1dcaacf668c7fc5b323b7c155f9dc1531c9682b6eac7d33e1f0727cdd740ec297645c3a3d72b9e376225f145471906671da9c0e9ce133f522e57d911adbcbd4e039c8c742e72cb0897a494aac150f563253faec42dac843d6f615787ecc6c113337c6b2af60d7f9e6ed5cde32e0251eceabd9b852db89f9a63027e86e594d3a1741ac8e1b9425c78b8549f13e7e5547f6ece2e90d1bbd24e7015f11b35d3c3be3b9a3be1299e86dbeeed4a8fb39a914f436908b6aeca0384d70bbd14b71d65b90018bc8280f917d6317ba7807968de22608ddb0675c7e309352173827819b0d0401347331d2ceca40ae3027d6bba3afb05dd7137faf3f26d13f36ce0f7bd9d6da0b8c9a65c4ff1e65c3c978e4ca20a4ba3758600cba5ba727509639c6aebf5d06c6d92b3037aa65c3031f189415cdf23fcfde0c46cc83566bda454f5e077e07b18c0d9ce42908fe904043ca28e164d10c79d6bd8fc47fcd0404120b4b5ae78712c245aa3155526ad7e1cadaffb33070fedbeadf640ea5adcb69489c7eb17d4352c4781d5c7385ddc072aa6842b87bb639740c07a5f4d7f630aac3fa4021893c7459bc9673c385fee33fa8c4e41c87ea7d43ad0ee39d4561eb408d675d4211d7dfa0c46cacd5de656d89923b6f3b6a2e0e5579ff1e8caaf70508b962fef21a021387cd41a32bc3699fab77ca998c8e96cdb983e7affa4d3fec291f594cb56cc5eff45f5664bcaba0346b06b24e80bbfd890a16623be44b294a822e36b2294b68d97e8273d926bbf223dcf009bf66ecc8d791c00819ef298cac73bfff3f95122273cde2a331a4943326d706e6d57a46da740bd35f1c73cfb51052edb763032b45adb7483d490e8932f1bbc56704276f19517aedb357af89345b4a5ea84e0e75c7d45a1627521ef11cd02b7d9d0e0e18ef1deed315ff9068a8c23e04c4440e8d5cf0013c4feed2a561707af5700f4f77bb8f6e46ff703c075cf4f8b72791502dbb2243f55c6fbb972c4e481ec0478260e082b858174736cf859594720095bd76816fbbe494944353357d4ff9f8e0543911eff671db5d604fab6affbc2a28d6c771507177968098670b2ec0d11b92f6ca60fc7f7fca4305f4f911ef3c522325dc4cff15d23e72cc61af4105fa35cc3f0b7170b72ee9d058564f443a15188b5a73f0ca0b05f1dbe8ba6a3add9b95bbe244c3804be0615271ca66735ca51561af5120e500a538231c913579d9cad28184a7e67d051755f8a5b5b18287f58c15c38576e02ba51dea01154d377a62f3bd1c00b597b3675cf4d5745cf6157bdba58c16c97b2b8bb83e078ef8e906082ca6a8df9ad5c6becb136ea0a965828540caf7d7897dd4197755c3a7df3ebfd2b7dac1c12c960c235a6a1468639597e59c71c4c5b3a5fbd5b48acd138ff83ffcb4b91173aff57cc289896c3984e040493a196a90ae6aab8ce59fe35e33ea13c3a146b0c144b5fd7f5b34c6f9534cbb272e5da3cda900c0eb2c9f226a6183a32bac8e8e53eaa27815f1ca1cc467b7fa67f827e7421ef93df9d11493c2f6fabc05aea419f140a94ef3b4eb2827a6935a36e74b27a833b7dfa2451dfd12ffd1790ff4961dadda2bfb63e01d6e46dcb7a7107cfbccec8064ff78f17bb397d98d7391b5f2018c5c07a033be0d148dc1c0f779a188d03e74827957980088099a34fdfb5156eb678ad44f8aa72b0ebd9e4ad6be6b2fd1ee8c521e0408d99da191652bea8a673a1029036b887027def702299c6721c550889687ac3375795b30388f1234f3ab8ab4e3a17910d445f276d6cdfc0440c3476d63b032cbb15c2ecdaafed5b0598a90251f1db1abfd22a640532ba13b55f2746be388ab59ee16cbf2489b6a7c6eb1be844f6158d733636fa700f6f5a4c0690410c3a5860da9341e5241b7b1f3484c61f831156b185732643e2df5b7e62e856b8b41b121e4734d533455666575c8dd1587a5b237a9e54a12f623ef0ecc33197269acf0fd3ad5ac7f1e88e2b1ddddbc073e5d3893e9494ad203dc14a28b1c0f66f257670c920ea6c77ec79e5b8d3484cd93bfbf63dba90acbef7cf7d9135d00a70c4c8b7988aec4bd43367814a93ff0d7b76b916973fdad8f4e24195bb8004eecb1f054a98973713c2b2f7c8c90253dc505204aee08274bedb8274e0aedd980c253300e2d314fdcd3eb5fdcd629aae9a2e2432a6ffddf20fcd8332d84157b50611aa3f4362900c1c9857e13fe581616b3a002efac06c4027e2f87e08107ee3377712a4b370c620176ff9f40f2a95dd2ddb4063f681097166ea2328100eb0cb3dd0f63dda250b73a91972840b9582cde47b0403f317c183946a780118e94d36cabbe87659e644907b57479c71aba5bc26c5d0c2405ee04f171e6d6834aaa05c5fe25379b3165fedc0cc9fd981a512f3601a79ca55ac17e36ce6d1222d443d85b2d004b9e61a8f9a71dcac0f606cda97bad823748ee5aa51d0a9afade8891a40cdc581c6b0a5befb04568dc97aa10aa02db49b89187689687fefdec26f52e18f57c398799a18709b05488ec244a5b44c5e74c287f99d55c5d997235359b41587cd82f34612f77d67dc18d3d5f170f7db6618a1d0e7ca650deb8cbae1b7a1f1e669f4927ae23217f2033b7be991475b378e75a13a35c0c5155774ccc9b44336da53f4165380b1a6cc5e318a0073259759cd8fc2c1588a0725e7be5c3ca7c0e4aa14a2a39ec991f93e42b8f43eb8dfc4691f0fb20df3dd2c7b8afb56a6e6bdb2460d230039232af232244b29e877693f767bd303ba3b38898631b39beb57f48d79bc14359bd89ce0ed26a23d478979c21eee3d2b3834847f20c9e40bacec23ae71ce559723582c407243b927cabbb664eab4a3a90b05553a5c2b3227c7f22c72011f432b1c523950f5e06c69c48b32ab2e5893bf9ea754b91d49fd080c638a75bebd234d7a10747991aa0d0eb4adfda31303344c19ed52c2565cce5a69917175d696751dec797ef178c0ae8473aab9f5ce36cbf9316b74a6c6dd85a05c887eef575cb176940d4abe82540d729a2c4ef1d1087826bd435eb3a689e1745251caeaad7b67bf1623e88613ce3f9f8c1239225fe414c1ae5f25d221214b26fc4f37b30bd031b4658eca0d43eb74ef65d18c9ad0214d8706ba2c9c592c476349e728246d476210dddf36bc329fa447a780eac271e4b02828a3aa2085579ea34620d6b08ccad6b3852e7914fa8801807d4891efc547af17e782487b6780b1115c656c02b4dd182d5c1155430b28bb1bb96d052fd21b890d70c87a1ccddcb18e8708b8c86e0e6d4da5b936ef3ae9f5fc68793e223086e0a7dc6fbad64a4b49aae74dc83e60e8850b0cbf9c5dd6bcea97d51aac21939b320e3662f2e77158af60e3d68c395d91df459359dc0fbc0f5c47f5024cbb4ddc2f496021531088298760dc4e41d6bf63fbce49b4b0c69fcf5db765d3499640b61d4896d098e671a07911473e041f8c54769fb3d07717d55c9d24c8439a6f4171816bea2643ef54c8a84ea3b91866eed4379107b860e8ea9aa657e66f8e81e1ed1a336957e66c93e0fbd0ff687584d714985ee1baacd8633e5bcd6c15f53fdf9c7cd4a7624af4afe5eeb8773b0ae7ece847d83b02848aafa2aa9988c594d27e97d0d25884aaeb74cec4a673adfa8edbe65114e60da95733600a090800dac7a69b2995722a2867a91ef592e89c17afe0862e040008a02d19f36304669da2a2f31481900051f9f87918d4b289f18cad30e6b64e606fb3f8c7ddc263ec2671ba91e1416dece812f959a91758ab8f780b786129a959e49ae4ba95283c0ec9f164d9f3b005ab9c7717136e19b758e749203cc5c409c215d201b72024fccc0133d256584db7fb28874de56b0cf9bd3732f1cc02f8157934e4d643523b427af2aaf96f66faf4e4667c0772dc0f08a9b15a2bfd59ac206751edfa2ad37077f3288ad578ebd636be079cce09ae65481c93d8f1100140e263716f9ed024d54489f3c5eb092a7f4e92679edda6f715e480b0ea0229e0b8aea19f40dd8b29066c275e607c639c0e79b8902e3ebed2134029eeb157927d4ebec3fb4f22efba9f72eb7a7bdce79f9e0596587417addb14cf79d2a057801b31dda16594f52134248e2f8f216ec8b9e42706da8c81c5895c497ca4eedfb90f2ee71723d74dd34fa57fc1e9a1b8825918f60914bad52ff4400f79d6f8625d6efebcc547ea4dc40df5fed1f508ecbb7ed40a6cc50d436a668118c3584a8164259de111c738335d41a301fbf9e270ddeb4c6846cc457cffcab30780ccc96a5d5b2534a9952d1bd6c09374ebf357aad21a924300f0386f9a93e4c7a5f7481729ff8b8a17251f622aa6d32d9bb7031a72916d2b18a760b457887378fda25ab4bf40cb8706f3508", 0x2000, &(0x7f0000001340)={&(0x7f0000000400)={0x50}, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}) 19:43:23 executing program 3: r0 = socket$pppoe(0x18, 0x1, 0x0) sendmsg$NBD_CMD_DISCONNECT(0xffffffffffffffff, &(0x7f0000000280)={0x0, 0x0, &(0x7f0000000180)={0x0}}, 0x0) connect$pppoe(r0, &(0x7f0000000100)={0x18, 0x0, {0x3, @link_local, 'wlan0\x00'}}, 0x1e) sendmmsg(r0, &(0x7f000000d180), 0x4000000000000eb, 0x0) r1 = socket$packet(0x11, 0x3, 0x300) r2 = socket$packet(0x11, 0x3, 0x300) ioctl$sock_SIOCGIFINDEX(r1, 0x8933, &(0x7f0000000000)={'macvlan0\x00', 0x0}) sendto$packet(r2, &(0x7f0000000580)="23c50ff7be27ae8665ebf777301e", 0xe, 0x0, &(0x7f0000000640)={0x11, 0x8808, r3, 0x1, 0x0, 0x6, @remote}, 0x14) sendmsg$nl_route_sched(0xffffffffffffffff, &(0x7f0000000380)={&(0x7f00000000c0)={0x10, 0x0, 0x0, 0x1000}, 0xc, &(0x7f0000000340)={&(0x7f0000000300)=ANY=[@ANYBLOB="240000000800000000000000fcdbdf2500000000", @ANYRES32=r3, @ANYBLOB="f1ff0000f1ff01000400fbff"], 0x24}, 0x1, 0x0, 0x0, 0x80}, 0x851) sendmsg$nl_route(0xffffffffffffffff, &(0x7f00000005c0)={&(0x7f0000000500)={0x10, 0x0, 0x0, 0x28800c01}, 0xc, &(0x7f0000000580)={&(0x7f0000000540)=@ipv6_newnexthop={0x34, 0x68, 0x8, 0x70bd28, 0x25dfdbfb, {0xa, 0x0, 0x2, 0x0, 0x20}, [@NHA_ID={0x8}, @NHA_GROUP_TYPE={0x6}, @NHA_OIF={0x8}, @NHA_FDB={0x4}]}, 0x34}, 0x1, 0x0, 0x0, 0x4000002}, 0x40004) getpeername(0xffffffffffffffff, &(0x7f0000000300)=@pppol2tpin6={0x18, 0x1, {0x0, 0xffffffffffffffff, 0x0, 0x0, 0x0, 0x0, {0xa, 0x0, 0x0, @mcast2}}}, &(0x7f00000000c0)=0x80) r5 = socket$nl_generic(0x10, 0x3, 0x10) r6 = syz_genetlink_get_family_id$tipc2(&(0x7f0000000040), 0xffffffffffffffff) sendmsg$TIPC_NL_MEDIA_SET(r5, &(0x7f00000003c0)={0x0, 0x0, &(0x7f0000000340)={&(0x7f0000000080)={0x28, r6, 0x1, 0x0, 0x0, {}, [@TIPC_NLA_BEARER={0x14, 0x1, 0x0, 0x1, [@TIPC_NLA_BEARER_NAME={0xd, 0x1, @udp='udp:syz2\x00'}]}]}, 0x28}}, 0x0) sendmsg$TIPC_NL_KEY_SET(r4, &(0x7f0000000240)={&(0x7f0000000140)={0x10, 0x0, 0x0, 0x8010}, 0xc, &(0x7f00000001c0)={&(0x7f0000000380)=ANY=[@ANYBLOB="7c010000", @ANYRES16=r6, @ANYBLOB="00082bbd7000fbdbdf25170000003400028008000200ffffffff08000100000000800800020002000000040004001400038008000200070000000800020003000000200004801c0007800800020000000000080003000700000008000100110000000c00218008000100756470009c0004800900010073797a300000000014000780080003000300000008000300000100000900010073797a31000000001300010062726f6164636173742d6c696e6b000034000780080004000400000008000400c60600000800020023d9000008000400010000000800010007000000080001001c0000000900010073797a31000000000900010073797a30000000000c00078008000300020000006c0006804600030061cd338f489e4531e7a07185228077f54f1eb9dc79cad326fcd545c285eada1a6b619ecc86a38a29c55cd15c9f5bdcbaa5a2872832b919ef68875212936f77c972bf00000800010008000000040002000400020004000200040002000800010005000000"], 0x17c}, 0x1, 0x0, 0x0, 0xdcd91dffbcacb59}, 0x4) 19:43:23 executing program 5: socketpair$unix(0x1, 0x0, 0x0, 0x0) perf_event_open(&(0x7f000001d000)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x4, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) r0 = socket$key(0xf, 0x3, 0x2) sendmsg$key(0xffffffffffffffff, &(0x7f0000000180)={0x0, 0x0, &(0x7f0000000040)={0x0}}, 0x0) sendmsg$key(0xffffffffffffffff, &(0x7f00000001c0)={0x40000000, 0x0, &(0x7f0000000040)={&(0x7f0000000080)=ANY=[@ANYBLOB="02030609100000000000004c9e0000000200130002000000000000000000000105000600200000000a00000000000000000500e50000070000001f000000000000030000000000000200010000000000000000020000000005000500000000000a"], 0x80}}, 0x0) sendmmsg(r0, &(0x7f0000000180), 0x400008a, 0x0) sendmmsg(0xffffffffffffffff, 0x0, 0x0, 0x0) 19:43:23 executing program 2: perf_event_open(&(0x7f00000001c0)={0x2, 0x80, 0xc7, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}}, 0x0, 0x0, 0xffffffffffffffff, 0x0) r0 = socket$kcm(0x29, 0x5, 0x0) sendmsg$kcm(r0, &(0x7f0000000a80)={0x0, 0x0, &(0x7f0000000700)=[{&(0x7f00000002c0)='0', 0x1}], 0x1}, 0x84) sendmsg$nl_route(0xffffffffffffffff, 0x0, 0x0) sendmsg$nl_route(0xffffffffffffffff, 0x0, 0x0) 19:43:23 executing program 1: r0 = socket$inet_udplite(0x2, 0x2, 0x88) socketpair$unix(0x1, 0x0, 0x0, 0x0) getpeername(r0, &(0x7f0000000080)=@pppol2tpv3={0x18, 0x1, {0x0, 0xffffffffffffffff, {0x2, 0x0, @loopback}}}, &(0x7f0000000140)=0x80) connect$unix(r1, &(0x7f00000003c0)=@abs, 0x6e) clone(0x20002100, 0x0, 0xfffffffffffffffe, 0x0, 0xffffffffffffffff) perf_event_open(&(0x7f0000000500)={0x1, 0x70, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) sendto$unix(0xffffffffffffffff, &(0x7f0000000280)="c13045b29ae9d769a494822c309d8d2f75ec37d79b3e984253994d2f4d2dd4e43384af979469722a3d0afe5850ded02196dfa2a56b556ad0b2791993356b81e7cfd2d69c097409bfe6a05e56752278931d996a7b9ab80b34e492220aaae8584e3652b8c32652f371bd379f03b89250d0214a7696cf71fc687495378cd67fcfc7be5e19c1c0d7", 0x86, 0x20048001, &(0x7f0000000340)=@file={0x1, './file0\x00'}, 0x6e) accept4$unix(r1, &(0x7f0000000440), &(0x7f00000004c0)=0x6e, 0x80800) fcntl$setstatus(0xffffffffffffffff, 0x4, 0x0) bpf$PROG_LOAD(0x5, &(0x7f00000054c0)={0xe, 0x16, &(0x7f00000009c0)=ANY=[@ANYBLOB="61124c00000000006113500000000000bf2000000000000007000000080000003d0301000000000095000000000000006926000000000000bf67000000000000150600000fff07003506000043fe0000070600000ee60000bf050000000000001f650000000000006507000002000000270700004c0000001f75000000000000bf5400000000000007040000f0fff8ffad430100000000009500000000000000050000000000000095000000000000001c0a7900009d3c2792432a4fa650c512aee994a5642cb064ecd5615f3196e3359aceb7556e7e60bd5d2e4b5992de991371274fdff6e79fc722f15659a7c85615c1b88bc894123cfe2314e887c1677fbefd35893d883a2c559b7a34db461b1974af360eace66cec40d92706d0bbcc5bf6fec345ae9606c3c1a348f9b395592c1018e5e4b41b13000c94df1f2db24c67d4c7ba9ec035883e2791a9e9dff3e8bfc7d1be000000820102b1900000000000000000387a601e3a3412086dee84efd375f0645f3301f55d3b9efdfbed9b430bcf0418e100bdff1c8bcfc0c229874bc3d2418bab997c8bef9aa55841caa572ddff9220c67c9e17bee524c3dc747445763ecb0a7f2cd12bc34b0fc0271124cfb5279195f701000000f77c71294bbfd85878726c49eb89085967722da6cb884d1afe82f7f722e38397996271700241094d272dd8b754b2dd36d44f92991a7817450bc7921dd372e621dd447b86e7ffd1bdc198deb495cac0995ca3ef6c1affb693ae366b0f11db6ee4830db4713e5ce6cac6a27e29f171b8e9f172c3db24558d77b8bf18be45c50b3fc005fa7b134dfc948f6015e0389d7f34cb9c02cf517c8ed7a9b6159c1446ef1c2ccff2bde95aa860ed9b836d6b8fcab7663d9bd8415e6f90fdb007b8f3e08de3a638c4fdb8562eb85173720c1df1147c9f5013c82fc98604bd70cd56609a6b739437e3010000d9cf81bcb1d262845762f6b0a284cc463b42492bab0f7b25895cc3ba8bf0b5e0fc018463d03a73fa85429725545128b0e9b550a13d0dd35092250bbce4f618cad2375a34c7f15c3096f300004468cf1aba4a6f21ed0eb3681c696320d3251b7eab79ad8b126500419e25a94ce13a7a96decb79c90b8df10b1e364cf97eaa49fd22942a0fad0d814f230f954eec84ebb7e20594e2e6f2371dda9fb3977f33c516aadc9bc51f23b12f761c4a0335cce4fbe7baafc8d0a6c6d8d0ebc20400000000000000c83cada15d686de0a0bebb94491b4b655f94dfa2ce197dc845ad83ddbcd4c896639831b8e5f254db99752a86b576337ec250c6f83b8cc300f8ffffffffffffe9f5f4628de6563809cdbe2101399c00000000000000000000000000000000d041c283edaef472d000d169d827488760c9eaba70ba10633e1ec690ac69650b22e96fb14b2a8782390bb42c2e80d24747ac70ebbacf42f7b7f2d5c8b32e999ce7da869b165932bb588ea0f7a044d753"], &(0x7f0000000100)='GPL\x00', 0x0, 0x0, 0x0, 0x0, 0x0, '\x00', 0x0, 0x0, 0xffffffffffffffff, 0x8, &(0x7f0000000040), 0x1f1}, 0x48) exit(0x0) exit(0xfffffffffffffffb) accept4$unix(r1, &(0x7f0000000580)=@abs, &(0x7f0000000600)=0x6e, 0x400) socket$nl_route(0x10, 0x3, 0x0) 19:43:23 executing program 2: perf_event_open(&(0x7f00000001c0)={0x2, 0x80, 0xc7, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}}, 0x0, 0x0, 0xffffffffffffffff, 0x0) r0 = socket$kcm(0x29, 0x5, 0x0) sendmsg$kcm(r0, &(0x7f0000000a80)={0x0, 0x0, &(0x7f0000000700)=[{&(0x7f00000002c0)='0', 0x1}], 0x1}, 0x84) sendmsg$nl_route(0xffffffffffffffff, 0x0, 0x0) sendmsg$nl_route(0xffffffffffffffff, 0x0, 0x0) [ 367.487204] audit: type=1800 audit(1623095003.263:323): pid=22884 uid=0 auid=4294967295 ses=4294967295 subj==unconfined op=collect_data cause=failed(directio) comm="syz-executor.4" name="/" dev="fuse" ino=1 res=0 19:43:23 executing program 0: perf_event_open(&(0x7f0000000000)={0x2, 0x80, 0x27, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}}, 0x0, 0x0, 0xffffffffffffffff, 0x0) creat(&(0x7f0000000140)='./file0\x00', 0x0) r0 = openat$fuse(0xffffffffffffff9c, &(0x7f0000002080), 0x42, 0x0) mount$fuse(0x0, &(0x7f00000020c0)='./file0\x00', &(0x7f0000002100), 0x0, &(0x7f0000000380)=ANY=[@ANYBLOB='fd=', @ANYRESHEX=r0, @ANYBLOB=',rootmode=00000000000000000100000,user_id=', @ANYRESDEC=0x0, @ANYBLOB=',group_id=', @ANYRESDEC=0x0]) read$FUSE(r0, &(0x7f00000021c0)={0x2020, 0x0, 0x0}, 0x2020) write$FUSE_INIT(r0, &(0x7f00000000c0)={0x50, 0x0, r1, {0x7, 0x1f}}, 0x50) syz_fuse_handle_req(r0, &(0x7f0000004200)="000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000dc4e00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ba045abcd5dfc67d000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000230000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000209bfd66eea2105600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000dce8f517e517209d0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001354c4b600", 0x2000, &(0x7f00000062c0)={0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, &(0x7f00000007c0)={0x20}, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}) syz_fuse_handle_req(r0, &(0x7f0000006340)="550213a07196529afe0c0440192d7e6b690b2971077c794178f51d5e3ccb8213c2ab2c2f9eeeaac3d26a2f97d4f45f2a79306cb35d2773c4877c1510919c87833403a04e443f0f338e5651891573291dea98a917f4f62456553ef1e4c2ff39f3b6bfa857c2fde23f3bc356a09b1ce900401bba2326ffdbd94f33d8de2e2e88332b80cd5fef8a5482b44a6e9ff53976da78235538407a23561df1fcb2aa25e96496e60b50e63f955b575f6ea992ec1120ef5d703a365589739a47991ed90db8f5bc075ebc30f1ae98d2dd9424afb051063d9f8b29b3891c4a15a7ebb498efd4ad84a1432bcfd862661ff920704ec2481ea567b9accfd0089aa576182565159cb218bc81fee7abf14cf7fd7ad2fbc9f84b66ad2ee9e72efe6de57459a0d8ab7de571be5409f07b18e19573dcabc67e9577aefeb5d076c8b331244dd8f7a4be820a55a59b007298911dbce2d9243184d8db00cc124833f82d55562ad21f64dd300a0a0abeaf8ed2cbd4e373cbc6b40510b77e9742b208a6b6b2166a9b640c6013a905e7f5966613c40b14183adba502a66538f4d146d80e1e38bcfa430b6ab8f23772c41fc291a01817fc447cd8920886669c439c31639781c8a1750182979dc91939a93f2e8df8823a83d4c00a109da1b99aac9f5400b0a18187cd936c69efea3c5959e34ef5ab1b4a230750e4a121540f88d01f97690c18ea599525db59dcdf9915ef90dbc390555742f68c333611731945467777315115fd08343175c16195186d91c317e64a2a557ceb44c930c144aa8f3a1600d064d2fbc841226ec4fdeae163c62a293851c9aa54715cf3caa3bb22012ab2244821077a83b4c7f6aa67752edd136d84df86932c625b6beb4de2499915337bc62c071343ca01d207913718d363abc6e1a0b36a891d46016f586c8b8cda719a52bddad74b872928cb772d86db68d9431686e742ad8e0d83597e94d6dcd01bdb14b8b5f76e56ed293fd7ccfc3d25459b5e2e45d6bc8cf7159d9f819d0935f3cd662e68d1d16d5bb2ee3998d0cc8fdf553356ccf56c89a5e0ca635faf9224c81902393b1fbafb098a86ebf6942106d6ff686f4ac73fb7c86bfccef7852ac6304c04ef9fdc156540ef072f20a403a869dfe9e8db9c58e1261367d2b8f9ba76a002953ffc679fddb9046fc94bd365e5d932cbf2f5e9b271300d1b90481d72f9fa41eb6e206c96c1096756d4de822999d0396eff77fe86c2bfa2b3dbdb0cfd54b3ddf378a0bbfc4397cac8ba586a3d6b4144e8a9b7a7ac998626afc7d1197c3ca954e48fd7f63ea52edb77e03176720deb4ef7942e604e5a4f500887a77b22760eb33d98d7612ce737af9ee0e78fcb69e7838adae221b4de45e8837bd468f7a405e5f8ed26275b22feb32ba3f12a893479f273e5eaa73658f1dffe09c10baee49dfd8df0501000d74198173d277f7123c4e131fe7db8f74d0390f0222f92c5859d57c709e54b4ad6549185357837b4b7beb28687c35fe62502e1a9a1dbc0f803580a6170b56e08c2d0104fc12c9b47b022bc4cb8474d4b40fe0e13f89a6b6acff2f11d24871ac50c4d10a63080d8f8368a4f982e65ad9fcdd37d809b1b55fa5aeae6377634a973482354ba216d9e24e39edd327063e4852c05db7458f56e6a0dd01440b0ead91570967008128dfc43b48e73fe380033e90848e9fd780be49aba2ff3c97b49f556f8c2c57ee69a15ff01fda1df9ff4434d7aca8049b3146255f870fac754dbb42945165ebbe7279b4998576f6e16332896b48e893f06148b7d470f513efa0f1272ae8578ba66e2042134cbdfaa1cfdd36a7f6c1874e858029429d9bb4f87eca7f7cf1900cd1667caf0f4cb74135301fae9e958f29bba29459de2208f84f4e2764e1fbed3aee309e74fd8598c602d6522f7aea29b73af70bebf10c924f588d7024855cb84f9098cbc7141ce5a6168ecc6d28e774adf9eb6aa9f28838e3e380b7b12dfbcdaaca0401efe633ad4ce12138d8a995b8b27721a2815c5e6331d2fd803c13e3175a5c02c5b5344409b06369a9d4b457db201512f00f53df67ae21fa597f5f3709ebedcfb347d6bf49df34179d0b7169a75a15af29869b2def01a7f5af087e444933ba11d51ce973d59a47efb884daf6cc5258d00a3d7f3ed3cfe450c72cdc5900569717c8699689607e66c5b5d6dc2ff8dff62e2047b30e80877827d2abba12e0af85b77246c7bad649631a9a0853cb79c7ba27f5f6ef5dac4613a7b5d1de79d83958ce4b37a17d593756f9c19cf3fffbcdc70eeb8cbecd6e77cb03e66fa3846bad89a2fe1e284f1fb227340cf4f4ce5bca6289c52410e98966446b4369d261ffc8057d56b625ddb09160298f1a015c1657c88603822566d9b4483801b4f5baaab4c530e61d9378132ec647d2444c04c446d3f2b972a46355ec08e505fa9995624e281292736808c8fa947cc4564c870f03ad931f58f68512c1327eaed18db6a55960ef8177b089011617e64df1d8dc0b9eb3010885f9eab7e098e5711f9e41f74d7b28943586666eb74ff79f67a16ae8d7e75561741c85c5f822f61b2552f877e739a77e20678d2c7a86cc6caa5852278be0cbecc1ddd7674b872e5d2e69c9a7383a33dc8f8c56548da95621211ac70dd89aa1862fa8969138e84810ec854b7b923bf7510ed97cb80037a84a8e66650bba2319dc30bbc3f40820e1b389f684db2d30ef28c470d82acea65419d20f518bbb6a99d734e82ed60fef979e6115fe870498670af117be3cec9aaa577caf1f61d5bbd12ce72a35b77bbc366c6790f44464efafb9cd8f9a097c6ac5423ed20e335c3992cc950b90fcbc7b4c3df2521a31d917af73058c93c1f3e26b47487736691c8b1370ddc613bad413982261e4e036579188b64cd9f39b1b4a32ca356769621c507b37f814ee0480b1a966ee9ebb56d6979a9d38236664fa1fcff19c8f0a429d86632e195e569ec47035c4eafe9185d19dc5e8c635a361af2b4fa33815361c000844615bce501648ee70730d7a1b1da4f0630b1ca90904f80e9e1efd1c8e1b61b05c4f040d5a0430381a53f4a1570491719560a3fb920d6722cafa0755605c955526e618221d1e4e766c35e84bd79ae479b5d178b241662cf9a124825101cc5e1373f3c9ce7625f7f08119fb011acceb88a9ff553639e7eeafc93b6135ecceb6eea4c3dab709005dd7be2f1490d1d648c99058f272bc325ce5fa663f4e68720a5f2b31986c66580a2be4204cf311fb3e5d61310445e942712bf5dc7e66a9370a5a4afb6aa03fefa3f0503d53cad9b79a3ef2ee9000edd8990d75ffa3759dbf0469b6e393bd3627a768bea18f533453b38d17dade925f7ca6babe27adc6fa3048d2a65bd2b0fd840a94ac5f317a1c839738ac89e7b22d1766308dd8247862f304fa51d727a27f0137fe19b371e5946555093e7ca69139c48afca4b4ac46c8d2f56d5e673e8b52dd94857fe953d10ca886c921b6626e869ac794a78d40bf49a025860fd57a0f437a4e650a9db9cddc93f8556482cd3676866d903b0f70601cc4eff564eaab292a4208d0534321e60119ffa6177934a2d1d7a6a1f1803e762c8d30e2a0d5311148bc21e4745b7c3dd57d0a616a2c49569942f2b48360df6c54f7a70f8a585b3a0d54feb7986d7d72ab0e16ba14187af4b9ac5a69428f1f61fe25e13cfb97ea30fd9a43e53b6841cdb766d6b3dcbc70277f2a0a12bff718b5bc50dec6fde5a0e24d23904edd201c8dfd51c1d198e325d65c18ce4d5ed1c6aaec28d40260949ed5c6bdc90f976c76dfdf399a9f9789fa9e176910f7ffb6427c3821fbc83747cb0d2ffe34b0b18fb34ddcaa70bb4624acd1ecf208e428b7fe89ed0cb0db2a7d74b284cf893807b4f76bdcfe9088912c8e83144b78ec8407aa37e94e5454946890174aa6be77e42fa0d764ae36855608d63d269164c3ca6a989232967f168c3f9b41c1204e02d7e9dc06010106f6b41987728775a5c31906bc7dfa33808e5523eacf7c914373ce8e61ea29407040feef8e9511fc04b7f2f9936a3161fccb7deecf83f507840898672fe13846ff8185ee0aa6734a704e4b7ab6ba3fb1c601e57528d68f8955fe42fcfa2ab0faae4008023b8a34ce4f861b5b86b5b507ac1cccf38355c5f0191e8ab29c90627657d6e100957cae6fbb3f0f4ae2049ed3a341732b4730b5bed1dfa97f0976dfebaf03a305da2a79d6b8f2e86f46bd7e257d170728d5aa55f786b5436a221b0d74355d55123fa1c9faf017103c3d6a6ed1e8e26fb8defd944c49929ff5ed4ead4e5782d14b09c9ebd593533c907679aa6a0b94fc8494291acb16e4bd2e4b953ac96f90ccee9e11ec88b4f590289915a6368716dc3e28dafcc5eab060d2c48911f288e501226a5145ea217e834eee7ebf0945e53baa08b8d72acc67fb14dfa47421081434b291a15babb97588c6ed5c7e79299056c70f5362953ef499b7a88c373a23302e3ecbc229824de95f12595f12580a3898533c48ef2385d7f398ce31c3dbb1c02547e84d0210595bad9a149ac653a3537edb419316f244f6a75108997b6597700df352b66acfc191c6b234c5c7beb2acf943f8274e0a159612f4ed440f3ff715fa2cff21b32444e5871a050e33e17695f1e3e7f65f82fa8783870c0c93f961807c6a56e666a5443948e2721570a9068ecaac4839c8209654e2efde43141b1551c9a966812b13bf4f9cbba828a1eb948a1e41a122e175c0ccaa9794660446cf18335ab13d1675a26eb81b1abdc776472d5da139a507f452159e3416532cf59eabfe01e72f4a4bfe86d293a7124ae3478443d00452c1a9be915f54ccee5d857fddb9ee4986c9186857fb4635a2bfb7b8885418fe48536cf60c67c10c729f92a8f91826e85e34e3eb78c186f2ff93b0972fbef4cbed448618e1c2cd7b5cd1b5d529317981b4ed973080615e0b385b41778cf536d9e24fb0ce048ec0dce5b075febaaf34de2cf59d9030e1a9ba924bbb5cb4098d82c511cc42cf9823ba77849bc867a6876096561ac209c2659baae0374ae4abb39b0ca54874eda8425942012fbca984a4c6c21071137eb4399d4c6891222c8aaf43cc78b1c8f2a9cec6b5acd748f9ac4de37b1dd18cd0f8d7f20337fd392ed10258457950184264a559b80c1ef92868676b258a9b579ea604adc0bd388a8b30822af1fa5120aba51e38e1dbaa840472e1f1f0eb86af5ec9f87a7324e49c4c0bd2b9365cb3d8c92acfdf479548acc9aace7a342284eb895b564fbb8bd577d4a310dfcf78f15be69da13b6710abc4cbe240a62798fdfba1b8a019f9c5fb462bf040cce44a1c8bda3819ea42627e71a5bbb0f8f3648daa2d26e81fff4dbaae971deb7dbd407b7583c9afdb7e7dfd7b81fbf1ca84d57b27e059acce70cb27ef3742e81a77889b01795adb0f070077b758d80e7a05dc66da4b9fed081100c3ccb5fd8ccc14dc36173673917dac8c6fa72c5989d0f6e0bd97501cbedd0a97137d3add8444330e1859005804e485fc997da58927f8cefabd995124e6baca61029dc3c4b091234610e04a7e8457c1dbd28a542497035615a990cd675d36eadd703492562404d366ac4359e66e5e8ec9e40cdf96cd1fdfbc0f2280d4358d96bdec660a6ae473723884aa79bd61b96ca11a7175d68a401a0b77882e7a44b3765a582018abe6a367d1478f5b06859e777f35d8f01a39c7960cb26477207dbc9a0a2af6d5beba095c606a9a11ee236aaf91e6b3b6be0639b2a13bf4471acc9f7f2f052d2a86c7ef0f0afe6ceabdc4f99036a05120b0c49cf80ec92b62c766035a5887f4bc8fa1e0c9c69a7b690c7cc2c8870f8e7beacba9b1a27c66f8d02e33c957d923b0a9dc4ef2b3237d2f83c72651966f8b13b24e1aaa5dd0122b75e3afc4cd478e296924349e077fab31a38e38cbea1dbc22689b82a1a4698fa4841bc0c0530dff14f368537c07eeac4a9c2e02e3b21669d0e039af22a4f38d4c21d861968bf312ede1ff02893fc44197363dfd89b5b704de61d609fe1d9013508e5b2276953ba5b1f8018c3a7b3c233d4cb3269f10ee6ca2fa9de79efe709659538108b36c1b71e4d2c3602459d57b8f46ffb541e2a6f4a19438fe3bd14be3e5682ddef68519cb56d79dd5b2b40d1281e84623b01af3c11f7b2cef780d06a0158ac7becf9b7cdc51618db8e7148a93637ca1a875d8ca2db07d78a5554760b792412c7c108335969c676888fa2d180030a8bbaca1c6c36b1fa26461146ddb13c6dc4247f18985a6cdfbdcb5a3455f497cf674fab04c84906627d32a0104d1cb3b1ebb9f398fb6c3a9af34a05ed7bb900335f1b84d2ffa2a589ec46f44399f4eb8f96928aa073f414765347cad3b0e03d551166e5e2ff9a89c15dabe0d46c925767df0f85e9c438ad99f0309400efdda91d4e61d0e592f8fda490b6791e41c098a9a839e040f5580b2d70f714e3b41ca8cb7a21fc2a778eb18a1e2a32c237c665fc4c496732e58b16f8607ab26b07bc59147218a8011068fa1d117b7e13a3c2b8cc6abcc8e184b0c7d061e94c0cf8c61b6ab194f3df5747ce68b3923b5998901c3d1294ba2a0df9fdc7a76c505bfd172a5c5bbcc0df736ec54a2a11b3a26115f1afd382adba6e3fde1e781737c12dab5c19bc5d27e91eab6579298d4b46c60c200d309df433841311008089ce0ab703ad7b7e17426391e22be7548e642cb4eb4703179cb102643aad424ddb72267b6cec2702fcacf19825303858fdeca7d5d3979c900db3ba5be2301c04a78c58ce20ac8f4a6bce27c4865f36511a4adb99ea25ebda5a6701c58347342ac876f80805695b8ad67501a793670fc76221641b89dfc5519389bc5ba56cd17b47bd2e075139c8db24e4c3a332723358ff5b8c6d3dc53fc79982fbbb6b887b36d52232d6d79684fed3add6c84fe070aedbd833165e5b547a3dcbb4977595fa9fb6d7d8b151858c3967b3e599571340568a2a651a3c6dad3a4a24127c28db3f27853cf3738a3476120f845df7803690ec6f97072b2e040995a957dfb6e3c27d55b7ff94f0fc44eb27b7fb81d5601ae88bd6de44163128bf423f1f76bdfaa9a170e43136acb8f5d3bde2b81e381635d4895f224fd8b7d9b04c8115454b0505ee03b332419c6ca3ffec3b127b036144ad4ea5b7d97482d298493e04c994ff2152815607c695991e85065f2c66a36a0c347a1e0b10ecf39500ed1476e9f6bb09ba569236d24459def02c37768956e567ca7c5c1c2ac05fb818d8610da9fb50cb6263edff4b6a165a13a1977f14f3b9101831b0f364f26e803ebede14a32fd37c5067c2be8c50be29d6757767424248ffb425d1780f9f164dd1d5a1999870af4f73bb09f632227351e0c5e24c357b7646edbaa599e0b62c569e32dbf0080dbf509879397c90ce4799b59e8888ae27844c760f901197250d395780e2e1087bd327c155dc31dc5b408e847b031f93e48345d3b32387934c9e68c9556b9d275d1634adecc0204ffb35d1960e736a34f0b07e2e7c4ffaf84ebc7ad39de16f968e1462c5371db06fdd21fe51b08ca295acbfe676e1e683bcb2dc9d3522b86191a151ac590fec45867cd81b97fd9a060e0e26f362b842390ba6dcf66ffedff1d26b87016b7108b4eb4a6dee0384a789d2305b871d7caec898358f01346d089844973aed3ae0a7a8fc6a5cc90a1533e0bb3696e243b28927da1630837a6aff33c2e8af1a7bfbe2ff8060d8df29f6b9643dcbe2e2a8721795636fe7b3187a48dd08a003f27dc2ddd76fb84db15572e0b2b857ed2ffe73526d92ee2a9b13f2693d2023bc7feb2ce769c2e8aa9973be33c77b5f8e147d4c7f414b18c9edc8cfa0169cbcc0c26d59f016fa1e80157bd8dac895a794a7211d83c84c7e003e663f65532018b22ed3e67be4eaf592a8a18b986245f6a8fded9b1562c6a106e04190cf0260905561565a131c3074a7af5a18dad69aa7d62636b9313c1d3e5689671912df51131315f715ea84d57849dce2ab105af433b034501128e2286e1d05384289711dd151ad097484755d32531508949a6e3caea36e6858ecb895f0ff5cb71f8b1cd677405139d5e95c6c34f421b0b1e0898aa74f7a96d7170dc0df19f1b88a0463608d964446967262ff7acafa54b0f95cd0c1b01c232db641cade388b6f348784e18cd33e97c132dfbd501700108b59ac80692371a4bca4f608d9357c6e1458cb372aaf02cf8742b164bf69aab3aa1bd6911202ae7d13f2d1cc27741e4856c9e2d654f72c205a9914969317b5dcefc8137aa564283d64f71209f82fe928836da1de181d6a52c9cdf1be072f8b5c44b063e7e3d629157ae1a768cfdc7105c6b50234b1dc8412f6d98038520fed97db8347cf02924291460fe3d392f21d7ac31aa6e90995756b6dc198c04a6c6eb6c5e41e1eddb8c78feff740273acf8938c0f52c108e5bfd7e559d73346e0b97595125992bfd6aa2097c0ff502482a641f8fa3b2f411a9bbeb9f8c03582ecd1d756013d793bb15b4c1f45f0a988f7bff685c493df30bafebfdcbd6b2ac26a743a0a21443ba776f17f021e80df5eed4926b10be1c952f839f6c87bc2457e1b95f73287895961a0d5874e61da6214b738124fc872376940480705aeb628919d8c9912909823ac384f6a072c72c03c12e2aa8462ce83737244f5525cebafbb491a2a75b4ae8006c2c9bb7d20b190987f5f85afd5b4c1fa8a643820590dcc5e9e55749df8e4aaac858fea295be26fe3891762cfc2fa45f823066280d2afad8653b94a813265f9d9107831181cf8839c72aadff85c745af743e0f22a30c28b4cfea2aa1139790d3e7b491b6b092bbb18bf773b06c3077ad3f1261b8f401e56d4c250c0f30e997e6a546f9cd1482b4717534065ffed131a8e4691e28456abc3ceca5849302cb85eb977a1743e9836ba2ab835f622cbfebbafac8a8edd97e5441ea0f84434b9949c4e5a91a7684947c0370d271e9788bd8222d5f53eee7491d20eb46c7321d5858e427b028ad279cb540c1a547fd18adea0e0d011cb7d251857c1ac23fb502f2ae515aa8c90bfa1bd693313100b6ff278212b06efb23fa836fd97331a9a276d3ec5f2256245674d65d043a072dae13c2649ea2f578583caa55b916ee6d65f510a94ac3ab6eca201f34f2074e631715b40478bafc594cde728d8f695287f2afe8af28859d5389034a75f89140eff05615cc41b06cc6879030cb0dc1788e4f34b3007a4081a4a8c8d8d47860699fd029d7d2a17c1ab2678fac43fedde3eacb441df00e61acf90d208591f70c75dd44892edc144795f86de15db7d9ae43dcb088c6eae8259dd224fdce809d6b4e2f13e6fe8e5b6da195ba0287ecabd18d48d1fd4f1e9438e120484df2e1ad9ceaae247b5b4c639413aef383d948dce80446ea125b67627d25f23e9fdf477351ac2d4f741e88dcd5f91550c71e72b84c90a5282f94bd9d1f08e3e240a0a4bb4cf556a52a994a8064a2c77e41d66077dc039957b795fc28239896eb2068ad16e84196b491dd47e16e12009398db1be984aaf6bf62fdb471a456b32c58f77c158461ac844dfb0858cfc81f591ae0105edde98acf7ea1c09599ae0e5c45b62f039e37a48b7ed91282aba6aab1d2c2b039b3f411b2f6897464a8ff2c333717e60a298be2709389cc644c70ce9c1a483a61e13617f0dc1902c3c8d84ca8ff9c0f43d022f448e100732afb8655c726e33ccdc2785d5ffd7ee533a1676ea93cb7f962dfd8ec47a32ef703fd560965b20a2fcd52207db1ef0046e4ddab569776ee7cf45f476772aafd16622b2613ccbcf4213183d5f079e9bee36d86ef709ae54422e38abe7a1db408b7ebfc72f6ca2b5dc19001142773fd827e72318c4fee1af716211d2401b104a2a40a2a3f4f683da6e5c8d827f798a73d2fa189371efaaf6f6e4c1a8460f6e6e51064dfa079adafc7d1f0472d042258395b2aaff31e943078e44a660b979e91e240628a12074a069b7045f20c9c9a9b2823d52d1a71cbd107b5b888170c2766fb012f60024c0aa6c5a7505cb17d925943b25101a0f9d2e78f40cca2d1266e06a85ab32f8f60dcd9caaad0bb5f7129fce17ab4ab9f2f1d9ffa5b9c3662498737d020614e54cffe567fb6d746c9a33065933c59b0f66429eb43013b43306506e0cb158d79d61938f52ec82a373bf7f03995e63b00fe4b109b3d918c7fb3e9d777771a510e1ba97321d2eff470d390776cd39cefcc1cba44bc0d0a5d7ab038a2cf4ae61285df7fd2c863d3ff26640f140d6c05222f1c7def48851a367405776cb72f19049b9f87e6192227bbddbfad8f8aa4822f6dc383b94e54821de59ed22ebca2babfcc7672606b90efc14eff624f338d0b63fb20fe28b3b3b1588788c12e77e20992e82eae0aa6ecf03a627fd66f251b6ca686142ea50223db2cb10936cb8e619b811a21f914b3f8ed1db52da0a40fc63df4623eeba59309ce490860eaf0020e63265a565102e050340f9148144011ab34c8617a8806153c8ae062293937ba31f789c97e937e7226a5e2715a214120e38fdd66c67e19d40471994d2b84d9f0acbfe2c255c671f3d70a5305dd13e7555dabbbb87cc4e62b1b34cfcc5d1b34a664d79a46d6826d4eebdb5d7df86128a3152ec3bedc77f6c1445732468ed7b91123cf314843e939e369b69d0c657f612a9a9c9ff40c396d2a3c05b27a57dd6198428f7fa2638eae170fe584310c11d0b13a15ec4c1b658d5782b20de550b166f2d89835a34a893cce987b8a807e21686ca78493c906285d7915390bbec275bd5535804b46ffc2de6cd313235ab52b8e04e98b4a7539b6298c974254284dcb32875029c8066988f141034fc156a5fa861826e49140cc2222099608bd279e6f7b3b12db95caae852eccbd8ce691e0bb937a6c83f929c3517a0eb2f247b397c828ea7a97be6cc6a357e47fd52df8be5581ba6b606b81f173656c4f7440b54e644ab775befa10887a1b66e1f27b98708e80c7e2bd8791ab006db14f261e8ee3ff42f3b8a3a899d8146d24896f8f6e3e7e104ef85fcf2f9453847774f63650f63cf6d944ebaabb9d7f5b3f1a3175860acf493534325b9b5da74bbc226c5f346aafe11a974d9accccee2df02a81d971f564bed3f7fac752203ad2c1e8cff090f8ead99885ac203351ec4280a1d016ca6c520061d864ed0fcab91033eff1f8c12de4e831bfa957c1e89921b97c5891538b9dffbf93b424e905923ca5f25bd64a17d3726922b9cdbfeed6c80ff9d06a3cfd0e9497a7b961aaf9538852a8e93eefc8ab49f416ee9d1b22d70472fcd0a774543cd8ef286ef9fc586c3661b3c8dd8de3af588f1d91bbc1d3f354b5a05f0689ca8e75f5ec3e1f75988f9058f0c154a4d2a748b2bf6b8705242a739356329878b0251f2683960a6e18f1e9719623bcbaf3176fbc0dda2125f506475c81c8fb1364de92538400a4278083aa7673e9fdd3a13e75ae0ccf78321dcaf637977fea58969252f6485a0c7644c2b072485dc76748ae76e2a229430b3b5a1d3b7785dc560f5914733425a02c6cbf177e85544b6ea8cdeb42f05707519d79d01f18742305d3fd952246abf5732675f000", 0x2000, &(0x7f0000000280)={0x0, 0x0, 0x0, 0x0, &(0x7f00000001c0)={0x10}, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}) fcntl$setstatus(r0, 0x4, 0x2000) syz_fuse_handle_req(r0, &(0x7f0000008380)="1d3fc0588fbd1ee18d3d558a5847e5909b75ddf492b38ddca57fa90102c1981d37139db16dff89af93eba795c940c2869e89d66dacb9e0aed49166803315f8c1e3a428d3394e202f8983f2a7a557b15c11e2ae42e2f07ac634034c2c6d63fe5505d3cc16fb48a8119d815c5d5391518b847b1334f3d717d9ab5a4c85a58da58c7438e79be665e1b196897bdb462a2266798fb036d83bb993d48bfcb2774216931c85a4fece4b93b635c3f1e651560fcd6ce0b182aaf777cfa0bbbcb6e5e9f4d450fcb95559468684612a5bc1582e273fe8bd58088cf411e97f9b671a81d18e865c2d899716fa59c45d7034afa7ce30b800091bd01ca3df0e083e1457885eba6730a6c70601bba70b2323d6b669898290f43afd84c333ad8c4c3960f70d0e47eb8511071b4e2c6ce2b12332632052cb4367a98593bd39bfdf76d228925d3e7208fcd42d701881c3cad1cf204669e4c598c7ae544bdcabac797503bc1896d36bd0be9edb543d5428cb04daadc0b4e54144fe8a86e1e372cd773a00a3e759fee51aa7cdfedb8c2c13ed709add3235e70c1dff10cc5d473f6c1ea92354c8bb991be1c39f4fa739824cefb41621e8a6cc475599ad2a86f2cd5ffc85684346bd6aec793b06141ed44a4eea375dedfff21d720c725562ae759c5f4737c34d8f1183e6254016f5d54a90114ce910b4c214f35721edbab6b9ef69c89fb3f770915511ea31622c453c53f646b205a0c383cadc845ef9769e99dd58f242b24e98d8d74622f4b7a2b42eeec0881b435404805f177865eeb3263ac63038270dc90b418407cbd984de98df8a449ed3466bbcf6c4b140aa4c0fbcfd4d88e1534e17218c87c32fe2d88807e308fb8c3ab6ca8d145f7c6406459b926e07cb30ce4baddbb0824c0378589b3cf3e16c216163e2966d271b8484a47d3baa946cdae77fd61a10472da8efc228e405ab686ff5a29ccbf91f6cf62dc371e23198b34880f200428f4ca5214c2966c426ce9bdffd7ee2c597d80ff570f44f3a07f5eb24fa4483e2938c98a9e64459f04913564df5d1b29f93b934e95fb4f04dce100324e5d7e6c22b042b8773a792b88405831ffd63a5dec2e764df571214aeef33cbc6e66dc157a86dbeb1d55bb3cbf8e063dd536d0e0ff006ff850ab20fab4023ffaa07b6ab6f8651ee9ed593774a3c3520f595984278b30fb4c0cce3a0afb4836952a7115ac345557f1871511415bdb9f593057624cd8a150954241cd60dca17b688d97416c29b23a767e9184db7e19a74aee2f17d11fb024d906a22dd2ffa2da04c97348b74f4ab99248059d1ee542c5837acb69f1c83f50dc66f9e1674c1b157e1e4f95eb462cc8b3db4cb9fc52086c17f4d5a9fc1f7748dea1fd7af47a7989c1219fd22c91e95bd299d3ef22bc73409d9949422b6177a99b6a9f610b737887f75f718257b5b2dd515acff039886505cf2d8fcf9cf69f74b812121d219ab526480a565a6ec9c2dd4de1b5d2632833a81b5fd445bc049c5dfcb242abe6141943fab1417ba9d2174ed25c521a8e5f6d1354c93176b6d847aa9108b8f49313aa6fdc0a88d08d3cec4f9e623f829dc03aac91c5847d5de8d21dade12e7efadf216ac3746530ffda5d038fd0bc7d105fb8b9fd1cb2e789622b39c0d559c3f887e11d29cbbabfdbe9603ce261549babcba3ecc739203f08238a5ec44719015cf3bdc0eac85c3d72ca34725f09ef8a5fa7cbc3d9197ae877314de309182505e0dcdebb78fcafb35504344770642bb13a22914b9fe76fb948ff03a1a42cd1a799dc0330ff0586aae32fe45238978d2db16629ff8751893e41e9ac72303d91de135313999dde4d93e881b0f1998ab87e5f8e7463261fe872b3ec4ab2344d26a982e286e5e7bfa8126ef4de16fc6107e1b077598e1347cc7b74d57565d4cd9b66e76f6faf51b247ada9672af011db71d48ce36bdc6fa234e6ccbba32a450f837a7180fce70b08a199e7e4c4bd3af39c6b3e78d56f300a45463ff04a55542b01b721229fb35a788769dffe8105171a0cde67cbd9f066834fd24b0ce4ac39a0ab5f96e3f24917385ecc635d7b8be5d9585a5d389316f1323a9916241ad9b490c7505701133451705ad712296bc4519aacf073fa7419a9a81470c315390d4e22820eb0dd0c9605132016f883b8a5e9b9b9e08cdca196abba7f78732280b0b93278f469cc7ba81dc6e764746ea2604d8ce78e301bcf2b9e638849a36fca9f9386f5acf8d9084594c5f20504ad382d4c083c5965f633248f20f1c373e6ae69719bd21355290f50ed84da142127b2c6b0a4cdd4ef4c753edce171d49438ebd31223e8a36f3219a3d6c60ca3a08f88f10bfae1e6a2a5391846ef4e6dae8442b17f7d9f727f47bcd0208185ff18474f1ca1b64580069e35e47c9bff3e421799220dc01eafe2122ba5faff63cd0f275c831e7933391fc180840e9bb5acb5357b196d045853398e93569b56732a637327aaba610de7a00fcb10410457e4493d532c99bb6e95786517add55467f06a23521b7e92be2dca54c9c3df2542384a82d27cfd02bb16e44a9d8c5f07f7e232b794dfbaa8bcd89c359054c188bf5ea5c251bb787282d86b0ec738283e16ed5dd7a74b03cf483fdf8a14a82cf47f4b04185edc4a2dbfd6356927322a15dbe4f35848e6f10eb983797f2886a266b31c0ddda9e2f45282d137f2e6031d2a756a56552a756dcaa24821e3a54fc3cf38c08feb31cd4e32a464d9399b10d7eef1bd627cab3f22775f4ff9d8d5d017ed0d0ad49dad13ea4d1d2cff663d9796b43998956d17bafd8fa49b934dee9b583fe62088b251919291e3b4ca1cb89b9cb035ad8179f2b60d096f96dc1efdd350e09ca32abdd88bc5bc283f0a3fb32588c87e37e2da427a469689c65152558e312536a2fd5edf9bcc19f25501cc9de0fc3df1a595b61ec856455d184f77619ebe89911e165d81597081f903e9bf69e1d51c6fc1880186a356157306c2ef2860d04cbeea0286e4f56d85cdf91cdc2029bb5d1b77debcce4886041e3ca2d6ffd2ec999e5f177418f21979f3135ff517364d99db378ab03df76febd0b2fcf72e7476956428ca20e4be0c63779b112a393a05c5d44d6dc8088dc57a9c0a5b0c5e2a41d9a265a400e62ccaf48aa478f929b354f2013e3287546dc8a811fc7964a50a790888ddc1814039eee62313ddbcf1c55154e386b011b36d8c74888669f334ff7adb1dd421d43b6223ac8beeee98ef1e54e6dfb4fa69ca8a321b3c2edd30143fc17806b04f8bfc403a55467be88cf8507d94f245ca59d1ee050f4312169250ac8ca1eab6eb00df7bccaea896a6e2cdfce521a404913df83bca8e699913b4cfaaf62d00b90eeb3e106eb4aafb7bda8d0dc5383d191d54a253982bb3885dd6afff5f0d85560ab129bb4b411af28740534edae48bc106ac43c3aac6528f48e059d8cf0cf870f9dc6bb669f2b43bc1b42f46a28d82c200717be88d4493572535d2663e7500d865bca452bb7540d163823e78302dbea5cdece7e72b84880423a18fdc1a080e0f0bdc7a58b04b8959ff6f67b224fe72ef22fbf6adf4812e550772fcc5949a157371f1def1a020d951c005140cde6c887040cd035dd972fc75b7b469070b61e1a442a78db4c74f482b950ac7aae40b009c2d6736e9dfeef0e9c9d718409063c57b082beb648fe8b41d3ecf3ded5cb24f7c20edb6ec753c4574a594b62edd81d4deb269b9cde7e2cd63d8d6da58736454e383415574b6f88b0c4dc158be230beb2a67fce06e7d8a70c554ebc79c2d40a31b1c19797000a8596a79e8ef11d87bf2922e8805c455a3da4c4ea2c22ef52ece8082708fc1dbed09872afa250f8351778548e576e97e4b3da023455f8db349fcdf8523f52a56c9b1f3a863652b11ce7cc619d6eef1611e97d7f94ad7dd65f54f88cf49d3ea4490fe76411dd3de5799174d1017b9f3017c2c3f8f30bcf28b68d7833b7a8fa46c3c3b346e1e2f55d680d22c7136f9de526427657ee167cdf90c90142ba705465ce94bb1803a1540b36cd8d22d6d9115c002f2ce96bbac79a573ea858cbb8977d9087f1e0063cea8c86a9671405c4fea89012b241d94a31b15ad36cf388ce3ebe924019aa3ed069bd07a24a46f7f818fda0d6463893621d6531541a57449eaf57dc09c9767a598444e07f79e2beb85362ea93ef04d37e5c4438c8093c026b3c042bf3cfdf11e5db84c05d7cd6bb090ee7686d87551a807fa47c07a84e9fb490f0531d38b86c344ae8b48aff790bedf407b71cc49440bb2300f9d9f73726daa89c7b3ade0b84323a6da6e7639652b004ddd08dcc03a7064866bda6b17ce8c003737a4c3416551a6fb779c414d4fdfcd3b29bd0daeb69c965f8395269019691e1552da684b06febd81d5f71b9bf095ffc581e6333b10f7fc4a3f365c0bce141b95a6fe580a4183713103cae76c776bbd29a8b26a3f2314609d1540eae73e43ba296d7576e2d8769bae7cf7518966b631bb3b215fa6a56b97ea96e116421ba669617ecae72e3aa186b23a289059c16fae6aee21ddcb669592e5068d84287be2d80a72642de4950366b346285b42fd89f49ba3002315c4cb76c12ca0f96b0eb13547e701831646ba663b0622eae281da69c699860728775e6f71ef3e63cc010a2eefe8d4dc3622232d8abc022fbdfb7821f02da20ffc938a7228d5a8eef8a9e4fcdc2ae68ff7ba6f8ff7e7e36fa40d35658e727554f696c4df6a45647bd661450a2404dba0b6021bc7a82df05b4076f86a7f33faa26195eedc2377158fdae5c4704456805c8458f4d643e356736c2378172d11c33dd73b0e760ca9eb5e12d707001955d3e6c85d427a472de77d6c1e28220c8d84eae5c4403484bb0d1b7d207c0c9ea476d2efd0babc5b577fb333bfbccc396471997de9d71b3c2624be1d155ad787635d4fee3f253e5b5f9cfec484cbdd510bad883b79381e8c608ce793cfe175ddcfb49ac6f2cb67474b415568ea90411f455b651c5c6890c94047d86f2c6ccfd787361d6ede1fa2ad89e6dc9fa796405d8927c5197e17e771173ca5ffe4af4864bf6a9ff10ae142ce2ebd664ab94ad37352f36be1afb259c7b8627849af46447ac05600ebc9eb636aa2e56c0c8540857595c114e4c1c45bd735bd73ddbe21823232e1db6ab4b985a681ed4ef505e6025d4d234086f4bd8b422e4e7e31e823bf5ec1d514a328e1f9ed98eb289de2a44229c66382ad64e3a1fddc548786c52c4d74e6e5dfe1e471c20a8bd6a90c1320318e74e7a1f3d7dd04eb81b37b8157db526327bc7bdaf16b181ef71d813588c2747039cd9c62f2afb253ac3a743d083ee53ad6828060b214e69b73b2064e5a01aca0ff1f5b30329ab5fe285193711f4401bfda2c89afbde31adaf1e0a1a9dedac7ae09650183f460f4a93b0e1f48728fa0c2b1b70c5a2ce4cb3d99627f9389d94aeb64e27054cc71b26f7f281874fbfe82ba74e609a2ac05ed5ffaa344fa14091cddf0c77e883a295d529916a16d06b4207e4a72074707ff4f17e9657b6f55d021bfd432de6ee526d26b4f70e5f8da02c23d43cd2b0ae674a573258df27b775db221d416cbab68084c3f5214b199e2fcd84705772984c92c8bcffe37950e8f3fab716f994765d0b09549201bb19ed09364880ed17bfaf8be10e842051f9f096ef864266593b6d97767b20a5530683c88dbda542095e9b57ce6e04b19a682652a4b72cfb17844a0f6a9a1a89f3f26ba56a05117d20f3bfaeee61d7deb85532ddb7d662163aa6386c91f40ffa00db6f4a6523b0b494330a932bc544629c294044fd0ac6049f285923b613bba81064f84ffa71a900fa9732023c8fdb0c480f3154d0dd815e9f2661b3ccf3da7c3127156e3e094041e365c97dcc6e74965a659034701b9961f9b755eff6066448f65601e9e44e12a7423d94027e4f118b5cb9f33bd762520afaecacd404c6dd59dd791c1bbc87277d5028596cb62ff14be1146ea78626e182a5beb492503b18d620543301161de533af3fc1f666727366f10c784e2f0a1bb5f5860b873f03f26b03707c2b8cdca494b08cc98c365009d22f3231c7eb2a24dd6cdfacd577ac334c2a07bbea2af22689fa35cc663013588419b5256fbd52538c9c5e708ffda77c0e97ced2e703ea5229d4eabdeaee8165e80d5867969269c0897bc45d06b96589eba66dad2f98aa72ee0aaa4aa88d6e4fdb0df504131909629eb4fec1de621e14f5445903716fce8049f89a0493607b11e596ce14c2e81ea0905922abd9c8601f558be28d8a409c360a279b86a2a3d09d8c422ef396979b9c3aac8e05b02975419213ac78dc677eb0b3a524ac0baa037012a97fbaade89b939f66d3cbee41e0c05c62b27fb0ae6bce02f7163da983ced2708c16b2351c1460131a9e922f1c1b6981c67faca4710346ed65a4ee56de725bd193bae5574ea91e104f660c4d502b7155eccd61fe4c5b819676b8727492768fad9d13fab5a240ebbb005741d5bbc215139e07be5bb73e3f6b4c4be9519e81c7cd088864c16e4650ac64418133650e26b9ef9020f55438acc9e7161b2c74bd172354ccc051e6c4a6897354bab543a7f742ce799a6e182b86839173acb03f39fdcd4a7637bb48d2e4baf031079687707612c006197ae598d335c463b6d79e0cc3bb7ecc278b9407a0d53381bf3cb65e78adf03a7dee07409b97d2df91413f04828aa2440049b9e8dc4fd907d879fe8480a239beedf8b729dd76042f50985db6761ac1f2e7f0cc48ccc7ba4d0634b0e816c8c68eff96832fbba350afa1107f2da7c53bb9ba8407c30e41da1278f31cbbcc394aafd6a1df76276e39a8d3c27c417753695a74e7252ddd27542b4bc2b0ab4cb001d01411d288749bfbc24ea8472e2906201655ee65d3f435f158d3295590eccb3e84b3f09e12db00382dceb8846fe155eb20580c20781619a894ec92d9a80a422a10b7ea440c4ea0bf3fbbebc89b2c11f7f3e858c16cb823e10203a957bc48959b1d5e3aa69afbb8a5ad1bf617ed59836a289dace4a5224ef9226a6f3d27f869292bfbbf3607f5aa807d294caa053a85a2f54d97f76adf509593bdf46054fac6e4a6b66f173a31d5eade9a38f5106a16704e80d61658ba3799b00919f87c0b02fc4f7c288c0252f46240efa9044d7458f6b92497321f696831565fca86c1c0bb72b4952102b777b466861d22f78dce75b8055dbe3d73168d41059715a23c9ed906e80b2353f32fd43e92d5ce90821bd9c6b4063125339b8f3a8df16ac4b1b0ef85cdbbc6f2acc15ad9e0aeb19bb0617f8623dc029abc232a67447b1ee4f6c4ce234c1ea467a20e8cd21a097f096855a75525c55a2b30c74ff8011476addeafcb18b64ea09600d7056fca53a12a1f89501d00dfcc81f74760fa26e081043ea648148b1ef1e4906e0a65154fde2c554b4c36e97de184dc9169ff3a326cf4a14708fe3c6466c37eed71c44143fd2d5e22443d1b61fe42fcf52207f17422a96b222a1c8ac8656fe98d7f9b5088a725bb3889ce24da112f2cd88575217ca6087cfa659374a82cd7cdb63b47c3979fcf094b62ff72fd4f0adf0750bb3e001ca7772f0733a5fd15e81aea1abd929df4cb195760cceed8d76b20bae92244c685b6a74be268c64a8960e1d6ec3edb9e70986b77eba84051c28900ee9b6c52d4cb6d67eaac2f5cc5bb79c12a5cd23a06f8605b492e28983443d245c963b81ddcba2a561957786a3698e2a0ccc21146a95ca4d7e4cfe16da4b4738a36c95d42f4a83217ebc7d5d1f17ddf5cf87f8ec8de65f0e69491686c973e69faaa179e52a828863797755deed4c1eed27d51a8ba25fb0821b33ffce69425d27ca2ce73c7eb9bb976f3be629c5608993eb49acf22e78c1002ef8d53ba36ad0b913887a105c0c5cf1d2561b5c9e3101925d758039f6d27ab42029d5ae10ca096b71e4cce05b7f8f3cad02f08b6e2148a3cb5f12f5577f52d118ea055b47b136da35283cbc6ab9570d61b54af491665d9bd141c2a11eecad22b00429b8c5d7ca9c94907429da625315826e99f3e61537a00b554228975cb593bdca2b28c1b022e8f4e6b61694fa934fe35501633bb8736021a08f58deb6d3d462fe00b7e9b5ccb7e2f065003b16d0e54c66a9c9d33966135e410aa0bf48f59949771ebb1d38b3902865fc309e7c25bb5b4b7de8611ffe178877c31a8d1b191dbdeed9a2348fff1b6217553bd30d3d9b7eccbf64b872b26aa811199c76915ba43c610bf4169d8ffe09eafc1b0a4eccbb64a031872ab1b3e7a9b9d9cf1e3ed1a1b6a5b4a32ab67edab8fd693360c62c9f34b00dabe47cf1e8428e28d1202e556160f0d4b6ab524107f5ebce2a4782061503cab2a1e1aebfdfa22edd4536dd051a860e9788a5a4691b243893ea6b8f647cd9094b643b9354a600591cbda3d762e7dba265b9c8e6c338151709322a51d4389431047afa1031d18aa0bfeff5d1bc28c5e013eef0a26a7f1eb3c4dbb12a215882897a65608fc3da16a6de1ee7349d9853f6faaed5fbd974fd051627ed762f74341c6ceb06d4d4d635f599aca02471ea5e3dd5012cae344abdc3f990e62fc07aa325757d1bb2ba0bd7833bbfd1ad4aabe86cd389afffab65c73df538d6f9b2da50b9ce1b1be4835f85f2d77a01594d35f48b370b0b11516e8913aef45196a24b290c7491ef39a3a6afd3790b93214837c3247e76ee41a4bc1539caa78adbc5b49d471a9a1724e62c5192ddfca31882350dd906560cb257c3582c4f294193dee760a15b35c9b746c690a4728acce6339496aeb75c2e350ec68acd49683d23140feadc2dc3eb118a8e87281c60a18d22fd12998c4c3c30fa76f9c76d1a994cef1dde10e4b5554e4e4bb0d164e3b85e5ce16cac42403d3b2c687a9ac0b8813a5a2ff6fdfae0c41d9bd4da4f2dad84a309ed3e6f353e9b29cdc9bcfc0c2ea73364554f5f9100b9a01e55fb3d1cd857c9f42378a3ed6f32d87a9cfc4c8366d6a28297128226b6c31612f9b6c1deb481dc930c417f64eb53cf74abc5723375e6370498817273981af928e9d64c2e2c1f7aa46039f2bea921ee5505cdf50f5c18d0bcb6f4729936e9a0ac4cdd2ed63138e68ff225a93b21279722f0174dbdd83b7fc3f6e54f602107c099f18d31fb5d682345858d154475ec38820fb3f9e7d340e9757854944aabd9202d4154b3ae6996828474f0cf82d9162c29706a455253e2b7a236b7c54b7deaec10ac95d71c93f7ae57751c75a98a59be69628454cbc0632ccb25faa8108de381e12cb18758648ff42225d26cb7c3c78745b0fbd371480f58dbae1e32da2f5edd0b487a6cdc0200536c3a45533e91b3241f2d19b008de02891276acf3194deef6b28133da6b7aab644ae69e0d310cb29c9b100eccf9cc2aa140d718ae5a7bb03895ba915f2ed39a681152c6567390465f33d6addfed145bdff55795af7fda6bebea3c98f9b4d0f9538c9513d80c39369506638ac267bd2afbb0d0abe3c44715bae6a8f2fec7bf3178a5c8821c5a6b32692f13153c364ce41a6e6e9201b733bf8fef31d33d058af4891138acd31b38ed8dec427b1f5b29455c4721bc1b69a9fe0c588b134831f57c64fca00fce1b582042bf68c8d4f05e27c685c81677ab6331a084fa16f6df88a6a6c161d4a2043ec2e2586bfa0aff858793f41cf2003092e55205ccd9084422d53245ee37aa8f16604944051fd787754eef613a5b2a0893e0016fd00e7ea3b13c6f6a7f22ef4346790b5f2d2c0482eca4f59441d488edf51a5e71655f2c6a7e6f348e8f364ddce5a57e0252a6ad7dc6170ecd50b267673d3054b53f03bab834de4ff37dfb731ea2a2d678e6791c508b838bfa9f274a8ecf5f499ebd356976e989cdf7f25010cf28169a56ac2b2664bde64611273af5b475546b43056f436845c7987a986150bae9121485ad36d2991e5bb14015bb360a04d989dab9615140841fc55e6cdaf73c914120fc6fd8c1106d75305bd1ff6fff2318ba444caab42268716d5c12dd5afd97abc3a048f3feda20622c1f16061f4ded6ee023bd1fa87496081c08f4dc84d946cf0ed270122b6c36da77690db383187a0270e5e9dc2c7b7f13a6548dbff4a462424973e424ca4f16ee07956527336d26d86a3810b4747912d0d72b66ae8c5cb58c500f6d48c07479d74ad29cb2107d3bc2a0c67ccf82af7e19734902b3f1092a515f71deff0c98babdf0c6a06104c0fd996567bcb0d4970bffce62889c6847316bea599d7a2f35a19adaa500a0aa8c8f50bc44f80b4a0a0f2607a8e78dbe95fac49831e0d54c57b415bce00047d12b16c50c511e96ebb39271d85653edc76f3099effd558bd90e7b8fd0a5fa50af4e424c37c9ef5e907051e61b08ddfe49cb318c37dd5978d0f11672efdbee14949ebd178af583860979deb98354bbe911582b6b4b22aedc7ad1b9e25f4dc500362ec7531789e5b84420d8abc72778dbdedb38ccc1e9aebedc8aa345a96e6af55b57e612d7438aeb0442f5bdaf696a072b72300930c6321bb3f9f0a6d4e42d66df2f3207822cd8758cf349ac1d291a474136dd7506a5d65446f7fe6d8abd942ccc84e93bb12f705d92cdc51a287ff98fb45b4a08f89283b133c14bf1840037118a5d518fdd4fa8c9e49d94d61959db5e8d90220d531efba57910110de3585b4ee4ebd64f89c745ab9d713604092aeb735683dded3de2da3af777371e6c678dae6c86ce8a28ad22cf02c2884987c2f61b2fc764eca2e3f515c35e6697f74243d3a2cf2f9cdf3d3c9cd116b8aeed884d3ecf7da0c1ad282c561f17d59ff9991ff1e31631b5360493f01cfee17f40cc18cc4cc77ff85f8762b6c8b19618f7a916d8caf1e3f3010e8452e1350c0091cc4bc5e2e303a9c3103789c534b511dcc56f895508d1103cede5da804a021cbfc9b0a23025ee40d9f23f03e1c3cdc1152adc9d5fbb394e6ae07202cfc61ba4b2186d88d13ed722afa5543aaca9bbccbf8d972cfceb33a4410947082a56a2132cfabec36e3fe9b18f3a88793e5e64dfa8b61bebcbb952d2c3dfde8e54f7399446e61c4c481f4d25c168b65234483f36daa99bf034542d3354ea93bed1f3770570f503e5e59de2a8d3c61751f4a45d52ee887390a7bf2821219aef4f1fc2746e30decff269ad83b7dec01278f4952c759efdd02e59e642ad22cbcf1819a199ade65d76d75123b011a29b807cfe988eb2153b1cb81a9f13a7b23ee5f3372a97b111d59760a3fc8e2bd06a775553f7b7ebec7fd0e054a00a9eaf46a6310393ee387698ae80d180742c42ebba50ac3a3c615a84d9f6d1077905dacfaa7324ba6f94e88df6ab6898780b2809af5e8d630bc5132d1dc8e0b741ae663a90588d92676b261994c2af2cf4747a8314fb022b0d76f74a518de290376bde67b0156c880a8208b2fd5d22992e6978aa2425865354c441eb12d8c1214afe5531b64920096257a6c439504b8e6d15c5e8abd7701df50b15b8068e43472dcff88c800bef997a76bcb9e6f120d9bc7b302d40685f30c067c68c2db4ee3ffd1d7f146baffa2a9935a07a6136a237d3808ffd06c69f40cff61573fbe36e2fade8bed56a833f86d", 0x2000, &(0x7f00000008c0)={0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, &(0x7f0000000340)={0x18}, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}) r2 = openat(0xffffffffffffff9c, &(0x7f0000000040)='./file0\x00', 0x185d42, 0x0) write$FUSE_STATFS(r2, &(0x7f0000000200)={0x60}, 0x60) syz_fuse_handle_req(r0, &(0x7f000000e3c0)="7219fa4736347448f0d1f962fdeaaa2f4e9565d9ba0765be302453af50403a86eb40b21bcbd77bf4c283a6bcd479ac2c234ae7a215c9e5764af76829b9c3d50f5f5c7b6c2390df2b003da1a236837357a9774f3870ba1f0d15b06453e65ec7356f9d694fd1d082bb765691c94cd946601128d3e84bdfac4e7a29261a1b028e5428bd784a1bf2d319d4369331b66b6ac77f295881bc717a69897708f4d9eaf8b02a6679b81fe53503714d30e10dead1b02c2c73af47ecbcc2d8afa86b152e059f632bd6f7d86f180d7775dd3dbb3928733b20d0b8e568ee0ccf0c7c94006592817140a80384112ef5a2555dff2ae77173df629e420104000076ef2353c02511a910e05b3dfeee214754b2c0a169bf94a78a503e89ee164571056973c56a9c95d4e934506292254d0402d978279d96bf35fa53a6345cf7ac3914a0d1c3f06b1cb9f0427d0c2d42ee4a81833489843975ff4d2e9d44dbfbd6082589d0baf183123cc821b981bf5ce4576655094e5c4ecfacd9608194fea94bf0da31e3610509c215a4cd490ddad06c0bb5c9a1779eda18b6ed5b9c761931ebb4f220776bfa7ba359650c38a6628dcfded61c8267d1590c8a6726a4039a2e7b83a1380197ab04e49f11ac215c4458fc92ae773ce33a3f058da0366e4ab24d2d9cba0fcea8a29491cdb25ef21efe9dc233323b07576e630ab3abb58c1570598d1c7739680247f855b8d4ec1a3997e6b2a04bc9a65c1c11fb7594504d503d4f1a79a6fc5b15c76f54681cb8acb1efe7bdd30470f2fdc95e1fb758267644d2831f51792bfd2cda17008a94cb1dcf7eb84297ce9b8bade982234b12be0b01523078483817ad574333a0e8184876d3794f44c7da1eeccea59bb261d12efa7389251b147cba04598f97d4baec8b7b4c6b799e0d7481eeb7dbb235e65f8b6f5ed6bf46b6021df25b3b73e9771269c7bf06f95debf193c2adee6ed34dd1b545a861819ae58e3b7069c6988f7c28d17676d41ceaf1d932024e70f264f5c7e5956c3bf0a677bcd59158e5c9942d4a1981893c866602d24d4185130c5b11f70be0ae8f79074baa3a2fe0426614351a256dacfaa55cfe6aa71a76ed18a882e5479c622653a98a50f435bb8b22b05ea16a4726c0555d92ef843a174fefe39088ec71911adef38ddf8005f3635bdf91f7002afa560179c1a7d62b28144c8bdfed330d3efc79ddb887f1ee4bd3fa2c342b6dfc0af07377cdfbf9b91616d8da2b3857d165e9bec14a304ee4566a3b709b9621918d99d6291deef4e1a1f04ecdcf0d92c0d84417b2b2ae4545de22f76c2528dd979ca1c40ac83a37a77794b07337a6b0aea2bbdd028275c24db33001aa9c6e8a37040546d9013a9889cdb8950169dcaa657420200dc523bd940757330709c210f26f3ca8fc5c405d4d3033fd7f8188e6909abb283b582349b83b01b766c11d2fb1433c5f57dd682da1013a4ff17c5cbf2907db7629fd376b3ec67bd1b7ba2f06a3e0bb23e658018dd76ffa90af51940fb5fa73edf117a2bd2ddcabe0bd96ef7a0b702fdc1125c9e6d873566e0f8b4684159a54e41df0fb0fd972216a045fcc086da525ae1929812d4e0b5dce70c08479be39590aed1ec9560e80856a40f7e4e408c14ca791c5bb234cadb58af2c8c20d666311b828a349ec21bcb9f1d9629b2a623e9086af804e3af32f6046437ee434dee9cd1a0d42e0e78eebab35988b7f1c8327f200a5dca16290f34fe3637bca69fec029205a55bb3ff218648c4f31f558f7d1eebe2d8146117470ba8d1a6794326fc92e835eff7a33b988a41c7492eb4fa6969419142dece6f7a7a9d404387762d813c4d744e619d896689ac9cb194dd235fe24c567033039b9afb9dfc77f9fc473dfd0629aa22d92e5bc388ebdfa6b1599f281daf0c464e34340e907f2b4a1cf289ae93628bc60f9c71ada6aa32ab1b4301040b1e387971686c68bc9eceaa6686b93f8ce396a1db7e8d92d0e2c122bcc9f7e8eb79cdca3036d5d6f69fac8e45576229f40357146c016af09951ce9c9ec08bd658a7ad0797414360844d0c795a9695fb76e3e36723d85c6298c7b6eebe03ecf5d44e7083b99fda4c38660d0e250816de5b44ad52b85b9fb2ec07ef99d5cf69797533e494a9de1e266315c5dc4b5303be9a171dcc78bf0976726b342442bcf118e384c993621ab4d3817541a4299f26274969b8aef3a9a27a9537073c2af67dd599ed87e7ea2a54efdde32a8c4b247561e318a8bc0c54111e3c1e88a909133b087cdbedb007bc318bab81046e1fbb0551bbc33130e1d1e44f74fc90fe3531265f9411490e902fa016acce6ffe9dabb0b866aaf1af3d6dd019843831bf04a4826b6df273af7f527e36adc5fc122e0c6136c80ce3e9ad0e0183e2dffe942efc5a6feb166fe581e346c1e1921626ede875ca2827b76e053e735a00da39dcf034e8f0ed197c064c048e3949a4dffe8aa1998d94b63b15e491a830f037d45b5eb11ce15777906f877336e852088400604bf084fc0f688356b5a9ad44094f88827f3c1c29821bf16baba51deaaa4977622159c2b9b7a2d80c50d5682d1a2d337c6c0e56219733dec802de90b0ccf3bddc07090feb4f394be70bb0adb4d102700bb8436144cb3d09c3535fb9efd287dbcff5b6233e6cc380eb90367352e4afc968892456f30e91ff906c4c818fc874072bb66d73c3d272e69806a94cb35e634d21fd8dfd0ee6de054ad8696e15fc222e064291988518155cdddb25f7228d7cbd6bcd347ed5c453221de10c92030e1a1b96b8aafdd266dc6f71f390ed7c143d2169feec70d850a138c661972ff8df74a053b96475e473bb4784d9a75f1c1ac78cc8728a84f762806b4cca78aec0acc629a2c0db10e4ae8c0c60e273c04a10a522d0fc12592ca9070fd4aa263dea5072aa1f286aa2f00cf94fc9b81e4de59199077b5f272e113a3b6c77e6ad0dce3a28524b934a699adef9ec2a67b5baa89056d97d35807e43dfd3e329f53223c38abd5dc31f66dd785287a5c8dcd9d2151406ca88c10e99a807f035ab9063c7e8a488c9588ea07db0bbad959932e6d1c89704af0d999c07615bca6d10fcf6873fddeaae71975f6115b792ea595be6a57c9ea52b41314b1e6472c82d091f66c18836eb8c68711ef042070545040220819e940c5f4ccd083f0f2b757c8f221a3dbbec12cacd2aa7531bda0fde96967b1b683a9e8944d624d26858233aa9f3104515182ce59929b94291eb5c2d695e4e6b7ecf30e5160d30c62744940defa7b455625047830b46b64a70e4070c3e47f42708242d62df081947cc7c13454447f167f2b59013a914eccbd44c40200e10279d45a2858703587491d13b3e816f515017b33ca0c7157dca8c8dac532aa8d392762d03034fccff3b906f8453e3517deab48c6e8b78fbd283c8515ad00c96810890d205d8052566d4d204f48a759877d3979ebc54d0b606a98746aa97a178c19abb68325de656b508a42c42c1664db915c687f47a75210764898b2803a3bd3f82c9a6280044059cc801fee406a5a14093b05a12ab3815ba40cc1182020d83386ecd8c1f2944b85b27b639f9df5aa7000481178a5894cbe66ea9ea8da50115cffa32c281c598b2dda88f16f51d7a1e75e0417988ead7adc10b033d03a41601709530799f81b171f7b79eab121ccd7dd577fd068cc4712c437dfdcb77b3981efb970d72ca32589633a9e42e54a79cea76bef83a0bcc3847ee6959405d37af73d3219a28685f71b337c6f72584bc37c4cf018cc69fad226827a22b9d58d41dab6fcbc056257606d8130094f29cc747f3338ec6cb0a6813986fc07fa10ee0b4dd4e228c27f585c2163674fd671a8dc1a6aaf56e3615802105cd827106b3e88a33179b3ada9ecef3362f910c818b6dbf4420f76b6e3ef168d2a60a88cdac79afd888125c475eb1a8d1b1b1a217ebff12fa89bf9eab76bdaaec17bc3d7dccd428a68db5812fbcb5a9d606f4c32ca2aaae107c817279be1e3e09c1cdea961c3a117c3f077ee575e82794a5f01a3ea28033381bae411c9c6a4edc294ad368bae0b363e8f0d027950619474115e655feb26d8b2f30bc159fbfcb824f863bcf7a8210eb38e22db77af0e24588a490add45b2747383883fa7feb5ab8797247db2c90fa8fc8e609b0e4028c2a817f6e97b09e18559cd7be75e6492f2bb4dee4e132ccc5681ad0d46950816b7c0d0191aaef8040062d55e5b8d8ccab4fd0c2f2a9ba3526953921126149554d10315de2055a974a081ddc27996607bad5b9e7f2676187f4304cb1d971363416cfb7881f8d48121217bc1fb118ac2f77af8b39084cbf8d67e4953527d1096d145fe4bbe8703f2321e1bc543d859a21d6a13a808ffb305657dd9336279a79f213dad1d3bcce9cc1eb520fef519180bdfde1e57211ac30a0036b96e93a6045d122aa03ef74cd480597c3787a086a8039d1ffa5fb0073faffc82d7561f34deb2862992ade9d30dce49086db8a5bb6a2529ea3408bd19441fa5c97ec68a2237c316d4270181d59e7fa0ec007b5fc9685552ecfa88f4ae65b48bd13fc9a4a78a84eef52c5a90d4988cfa74c17031ae03588d949d56641fed28f042337c78e4e084a8fd316c7e88755f209e596c5e7b21e7bcd74c26cfb4ad96832b9c3de224d1f7cdfdde65eea9f2ea98b27cf138cd3d959cc869027291e6dfcff604a3847b69e6e35be24789012da813402e9f37b3d512a62d1e255c29c68b956398ce73ecc449d58064247120b58efaa78d50e94568bd2d4c9d56a9159483caa63746c36b0432abfafa38799fd9b53aa9d2b3584b11de0bd3a56315d41a160ac1578f999c5102a0fe8f47917a200091034aef7eba15c293234671564b96aee60df9e5a6fd19ed9f744a36aca8414852278463d753e8dcb1d968d4380c84aab6df7b0d7ed819c9eac6fe59ed53998c8d3dc44a8bfda2873c13ee9016877db99bae02e44ca95d117de51fe66042659f9d63c5bcbb20e3962f2f9555e9315284071c2dba086dbb49a964ef43104abe8f1bdcf81825418963ea894accb301d5be4019608938cdd6544c5d99821c218aebe031cb62ff1107349be067127125a57f1267d33fc64c492ae4aa43fd45b1d33b2b17415a48094d40f7311fe44be73834d1ff73aae7fda9aa2a29c41f4e7e97b5a4456833574d2dfcad90ae8abd4598af3483fc243068e1e2240a1f64eb18c64c3526869a68f33f6f6db3a79746448097686a37ad68265a36ff4141813e4017b564070ceefebf08f9cbbdcc6b506fb3427e0c951809dcb1fa06511760210c8ddd26ee661c9426dbb7e9e526ae602c03960e6594e47e6ab029b1cfc0d7642456c7c20867a8a0b6ce87fbb1eedd00a5610b691b2a4fdef3e3f96b5631172b88b1f37107988c8370c30e36a4ece3f176ff49605aa69cbfb0c6775817e3daa04c8ed033028a91373b2663e9eab3fda20a497b2d14ad4447e095b032cd4de59ae784c51e6cd332bbe833050230d012b1f2475666c854247f19011b3dd5970d8d3dd1d1e74ef0ab7825934573932b37b1345d66aba8e9edaec13411578fd7388ceaeeabf0622334d7067b8710422f7b8eb2a45cb0cdf5f9872d3d14efd2d818b8fcd37b3ff5bb21f2d1e388839d97ea97d2c3e15c9b4dd05a03f2a1f4c6f6450b2925edeb50c0ee631bbbbdceacb52c343b23989f7d7e00b8e6297cb5792cb7299117949a5854129f932c444cf7401723fad23dd4bced0da5baa36dfc45e89a8541eeb432ee7f01a3c6cf94d2d42b6924b03267d2ed1516659d3aadd534fdda378b028d8724a5329a6237038b46a7fa621d052a7e35e7d63b954ca34908d1144007aae6def3d069652a76c5e0c8233617ed6c8be24c26db9f7732dc6af173e05d6f8163335ee07966087ceba488a24a0f62fc12ea47d728794e79e0a20c1648583b203e98770be9feb6f5d0f2bea1495e326a0012c3a2ea8021315f31533f752c61edd073f1283e03d46d34460eb623fff130a57ab2a0a21f9c7c0eb147bce5692f886827c4cea51d87ff9f31a250b38ba4d95a71e874f05744fddfc7ed11a045fb8858be2618e6f4f75696305c1173fca9297fffd105bd38faca2c858d797e573baf3645e0abeccdaeb36f2bc8b1380a38846cc0c80789de54c1d6e6ea344c75b18e58563909a93c41542493fbe25d063a2110f21b08239c4b8be9d24b1e0b1eb9e5c832e5de878d091c475537e6d1baa11214020842ae5c4824e11c11df4ebec8e0dd937ad9aa4c6285688157d465575db9e2bedafba02a2c80d502886343969e322f1575d90f64a0b163ca560ab853a1b64d5246bc53c99466289d3fa43c31e2f8886ce6f55dd2b327338f0266f16774b85498c815a75805efab0add1c4361d1c217f36b5e18c8b2e1efa2dd7f6d1ac695331111b17d665299572f09dbdd9e7950cabc951c4cf7d2cc0e22f6699f53e9573826b420a013310c45690874c96fd0256875baf3f88f1c824eca1c7811501b1d0bd292b105efbf4fa735210ebc62302670bd80b66aa499118f839b17698898492dd6d439c29066bd0a9ebfb30bef1ecebc69472ea8b7c98fd8e012634206f1f6b98420f383413177188d3ed26c13a8564502820ae6752cddf7b6477a04fef130b3caa8913e4787105a9c7e310bf059ea4006630c9603612f0b1caa83c5609cc8b165fc4b14a4b044fa6b9b6b4ac0fe88954022af217e3f5a46f0c075bb2a9d6edad593c295d40490912403e3c461e9d8ecb379427bb0d4f09433ac282ba55ee4ac5fcb94d866429284fcb826d7a93a052eab1dfab0345b238b15d053390f0879638e5f7f9d6e2831fe62626b950141b9cb2a4ef32475816653541f2b74baa0759f1b155d12940b2a34958702e140d98445d0a038cf8cef5f814a86d599613c8a975832710eafa278d97c943c5c6410f00854eeba2ebae6fded67af33b0b5189dcd8d6e0567a282f614655a90bb7eb6283c9a2f0dc132f5a0a2e13e76dca49815170d090be93b3603c3e1ea94efb58d4986ecd452ce7f9caba3567fdc38451269dd5c0f87a9e18f4b01573bb6a27f4665fb964384d91ec1f89a32526d26ecd2128a9e83d10c6aa2217658cf0f34840a7b0255ae3d0ff85a6c11e9f9683a211acb96c6ae196ca830aaf21d97efbec9d88ef92139daf87818a55ddb07717a79608857746770c3449a83c0caba0d841c0791e64a84bd5150955bc101c853d30ab995529340f54b29652d703071628d457db8690b792e25c476fbcd1215f51ca8d60c9556821e9e2125468e8b25637412b206472d757f69e07cb19acfe5338f46bb4917bd748ece5fc62c66f5db79a380da8112888167948325d0c031dd6be1d79bc2facf4b34fc80829dd5c4effbd90ccb08d397c474b0824cc5865ef9531c88ffba1f5a2696e2343da74963098acc5614ced2248bb83f7371672b14bb7ebd9376ffe91c8ac7c50a95da85d804be81cf4218150ca96a4739489ad7bed2d40e26b5bd45aae6ed859608b509901a0559930c5bd2fad3451dced73cc79da05d505b9189f3f66d4d7fa8bc1311f84751317802f6c97a2489ee029fe17481407638228ae266790d199256e12780c5e48db4bde2a548cbd6bba52019f9611c589c08eb2a2a17349f51956757fbf78539ed9e57ad04b8b2513352fa44b15c5fde5e737d8c1594a6ac12ed91127a13fc3b7b35d000877365b098034fc519818521503443f67a9c28e593fc9fae59664833beacba5be1939b071ac1ebdf03e75b99885d159763600509d22453fb26421b9a56b72c79080e0e155450c9312a0ef996b940e5f3e25c4129f25ac16a86cc86a476fc74bcb29a19294bfabbaa38bbc44ee16219e559251f1892a57d3c0b7cc252c28a9b703baa19fcb46d2241ac0c886d524a6bfde9b8e2827c26ac19d994035342dc96c08d20377a476c41a1564663666d3e048b8c954d4c30f391241539439074fa429d8c3715b71c11ecc2f210792e1fafcf89796cf7e54264d6cb0c17f80c1766e079234c500e97c9ad0db4d6fef7b366ffdf057920231478ed7e057b166c627a7a0e725f1864fd6382edd47cdc500f86ee66531ab35afbc1687c354af2e8ae95b1fb5f8516560a58729b7b6c7b3d506682c7f03716b9a53ce7326d8e0dbf0d9b0f1bde90d68472b3a10495f5284f2a9c737590c6839ce3b417f59720ea733a3a1b66066adda9be767f922bb7a9f1864d9836b681e54e25cc7c5880fcabc027ee2e21b8f1ea94c915f243c36a75156f4a89569096d0b0dfe9aac98b1015123aa95f39d00e439ac1f0971345ed4f8110d65296aaa9aaff4051011c272e4a21e73d801ca0993eb893693c2bfbd40c189f9baf00e3371e023cb21aa2cb832b7e87b2bb2b5c733f3c02103c1392a9b7555c73f86a6c19b99e8e4086c11ead1d50292c69f6a97f9da9111717cff287bb8ca585055d75ec6c32f65444a96e99606905cc6894af1ff06f001bdb62dd52a38ef199bfdb12932567eb72b06d9301a568dca814877fa388490c9f81988ecd6d6b338a2724b0853ce87104c61c179231a484fb9dfae9f5761ba0337930761d413aa87d3096032e4f71a55e25d9f873eb689d40a879ca5188001011ac803fdc95331d3d859182bdfbbcb81c101886de05cbcd9cc392659eac2500a81ad4d785a7cf531f9d428f123836f5835a1edfcb92c67e84920530c4d2f6f9fbfc39d8eb7d2c840122da42bfb2d15d11a647a7bd27cea23a0bebaafd34d36f5ef4c7ae53f17dc9f2b0a5e33ef5bb63ae2a15a795fcfa31f333858aa494010acfe2dc0781138b8e2db7f58bf7cbce9da33b2c0836183087e72292948ba38943e31637bae8c77f18d455e100a70433d3d7e7e779d65fbbf5d112e32863a2bd31997f644491f858cfdb881900a0c69dc1f91e8714a43ad0e6ad999a84c8e93a4bf3f29a98f4e3402a7262f0159c5072dd09b0af7b6806f0d05a788f1c19855aca18f9a14674b03ccf200799b1e00b2e3cf7431a0f4c9ca3ce2d58642258416e705920a60eae2d306841125358e83b8fd9179eb2f4c1f8e10a6f86a3ac73bbf7ac751685d689bd181316bb49861512f7c375537c3683aca51ab222dacc2c537be6505469b21dd396182c919b817bad13bc1a2880d7c4662b27292b80b426d9b7acfbc26f03f7170cd18489de2e35a3d4530ceb090b52a2fbc80f4a578fcaaf5f38d9ce3601144eb7cb36e806c9b38de03c5e86e2bae5674f32d400b1553fe407440fea7990312bbc2eed3b7ffde10130fdb85a9d1262e2228438d231999e49d8b4d8c8100ecf31df55ec0b0f86f1fae08e8f9d6034f85ee80d9307110f060c518eb86b8e021ef7f7898f368b23418170cd7a868ca3ebdd8de4e3a7873c392917cebd90d1e77cb8cf2ef65209e95e41b372377538394052b12b053cfb49cf04dcc3524815d036fba1fce46155d24f0ff9c1f25b58bc8f859b0f1622096ff69359cbb6cae2a044a597c8e90c97f669db48b7e9a133dcbef63a2ea1adbcd7eeff057e94ba4bc46bc193ed5cce3a0719a23b95bd95916489b9a2012c9cd04f46c3f5887e27fceaea8c16429b0c70df2176f428e3f0f2d7229303fd86fd3f31253436ac633141e279e3f04bfb47b66e25920f8d2c5daf6273c62391e30cffe094611f25ed714f3b2e5d28656ce77bef05d1472600b8c6787e9f9a2a7a3ec4a5c75749fc7876bd637507b81439df28759fe56461daedc89c735eefc5feb3094cdfca1e9c44ad696cfda82703d6ea11ec44a576214d9f7dc891d6d2d3998da665d10e2c1c807d248df651989a41e1e57402c37ed626cbfbd7ca21a35757ae7a4e739583aafec17b60554066a63d521a4c8906e0f56f85f73b0466fed9365966b89c778975e751e3453017de75bd7ac55a89e3c1fe5f9e29d16818344ee40943518cef2cf8add1ab4cad10cfb5f9ef1224cc7c46a12d99d91fc5b7b86abd825dc548d394c8bffc1d8372a40fb011421767b1fcf99dd78a5a6d632e09c902a74278de288a279afee23940a2fbc7663619eae9a0b4c221b6819a93be27d7c4a5c14a2606e695decbefaf7e4852280ab69c4a87823cb04caa4bbd15ca479c1b7eef13ef3016901e08da041b7040f0f5fc6b64eaf12c00bec8e63b9e974671dc8bc3d9fd5374a800a28b88d718c8cdb4281d44c506068a048e112b9e0658a4ebd099500205e276cdb05b3162ed6324c8242901da16806137e2a523e8927a90be0b10ab1e708299c49e7c4944eec5408ca990dcf0d5b7dc2713571f407ae6e35181cd0d705a1abda0bdd82f5b3b1419b039db926086b11e54068d3bd2481fe5d8025e09b72548fd6c10391ec45c7fa2765578c6a0918b7d6af2d8dc79acd2b05ecd190667b77a8d57234fc62ff61b66983daf5c1a19bd47bc2b626cf2e3a3276436855faede2832e91ea16b26a900c3e43584e2c01b2ec986d0a212428146d9254ae7c27fbe2e9fe18d8dc5a0061542e4d1ec14a6febd43eecd6a4ecb3f0223fdf5dcffc509161a720d041598c6fcb359577bc8ab447a7561c71b0a287242430b78cde49c0e037e01c2f28633571a9284134539356766bc63964ccf9051b361d7d17008cbf9b2c40ea04fa3cb0f96517acff755509592d03841660d2016c25ecd330e62ea1df2385a4ba04e71d91428c437f5cfd1ee3040899b94a351ff936bc72b874f28e330afe0cf66e37c39ef5c38f34fe70f981bb883634b3e84c336b5fbdc0d153e2a0673ce4d3709f35822902a2428a3ea29b6d92b81f4b7de6345ff70dc8e3b4c47126b186878107cc2999c16765b52dcf48056ccc23d6623df14be4542facdb654e3edc5a35315b65132571b3db199be785b062a3cfbf0f3aacf18ea274aca3c30265741d006abf0c706695a16dfc5a079cb38d0f3a897d3c09ec1581aa1a1ce91da5840507699537b9a4df9a8c25566d8bf4f294d8007517af43610732734694cf884c53e9b6840d042a85d42355bf9f8fa718df4dbed3a118172dc3da9f4a8c53d9272c4c93e26e8e47686ea77d469f0a8f7c76b773f54ca7dfff85e87f8d5b464fef0e4cdf791b4235b8ff02c6266a845679286f34f76f7c9ad67489f6e589231df5600ac902c4903c25e8cb9fdebf6062d87266d7883d93b7411f73298fd04e6569704b150f3f37df6384b6feec2fd656671a6a44b589ba7729f7580127825f2ec6605e002c3a2818a13bd089b5e42d14ee09e7fcdc288019125344319513906b32979032ae70e116855998365e4fa77e282a43cf98f93ef6aa0e0768ea4c8acb556725fcf41d48383f6ddfd62bdfc5b6028e362b91b9954c098e16a42139478a0ddb612210d67bdd808fd88cd33268fe652308c66a742f4409d3a42fb6510136c7f910a73b437c4daca57065538223a9e5a8dcef1b0682befef54cf13e36d6faab9b9f2aa976f5c01133d97bd5f3b71c7943db45e494416fb2d00f8f85b196d5307e22abe5e0d48447d5f9df003ea626921bc0dcca7eea8d1f56defa31bdd2f61792774de51970200ab06c703862d446ff22ca7024f865f4421c09b97d2f2ad4636d88a208448f8e065ee5c8fab93dd765000", 0x2000, &(0x7f0000000a00)={0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, &(0x7f0000000300)={0x18, 0x0, 0x0, {0x2}}, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}) syz_fuse_handle_req(r0, &(0x7f000000a380)="1889e1625e95eb60b81451ac8e88770e9c6915888c0a4dd7088b7cc0abcc77d43121799253fd56de16818e5c727e4f6254cc09a6fe59299068c07cf463bc0c363b50e42870f35f18505a8068e037f6a599bde2bf99e6fc03d67e952593f436717379e29cd556b1e1fa8f58071809763a2114725d528c1bff3ed55ff1e6f9496bc6692322cde7054e2785f74e47072e9871a95d107c054d33f1630edba16c59ee24d0430593cc918566799d74c5183f601be4fb2b227e4f0684a7044dfea1d724fd40c3ebeaa644e52c3139b6ac925775a27edfc71a7d51c2901e5173a08ddd4332b2ad90e730d586e5bd54600b9c2320d22c269c12926826ca32542576be6b7f4caa556a48223313961b02f836ff4f6b926acfd13e374047fc1aa59538e0832ddb7b9efd2b53a1afc39d8c345deb89581c4e6e86f5e1842a9108ff1f0ca26a896c596cab32a366fdb026881894fd3f1709ea6155b0d809755448e46b16edd342dea12c361e8df41d35ad8bc5b61b0fb0b53aeae91a9106f9644e9744ef9bec69f306d475c13af47bf6acdc0ef34722edcaec82d1bc7c4f350b161534c69db182d1388dbe14f013234c2ea1e95ce6f65c4ea8bea4e36da6118b12f672e85805265ecfd4b142143de8ec19aac8225730975755c311df9d0f3b80020576fe50e1f7b5277c7da314c044150ac097fa7198594f6142e84dd958a302ec69c1ba51b5680eb95a38cd87cbf6a75db8ec3912cce3521cbdc956c39f44547d42e7ccb38d5bad937caa379dfca870bb7e5b9c6176e714c6895b95c2a7c8368e76a10e275849f242ccd2e49fc02ed0f060723bf37ad7211857fa4bda8723f696c5d2961b1c57a1eb4dbfea9b39c289a6f573f38efc70acf329b9406c64fca8b16d37922eef41d12fcd3de771701d7bf2ab09c33efd4135fdacd3ceebca5c3c73a03fcb007e5d3daf14f3c51c94a0908b7ff56bbc434a3fb4f727a410f3e9a2e15434dd92586ad5314593fb944fa1a0e3190f7c5e92273ad02c273e5e137bbe4b0b90c26cc2f7007b7791f8e5ec37c178504c7e2de852a01337f883f148b2a824e66103545fbd2a9366d6b4de5ebe1d9f602edaf9b2d04c09e47cb71c8d4f9eababb68e1036c9231507a8709ba8cb758d34ee7924282fda8d5a972888608cc7c12e1ee97aa4a99ac257708b6a498d868aef823d31472b7618dfdf644dc58a602515d630a772c68276829f1d7fed1e3ef98ffbd2e686afc171bc8cf72be235dc2f3b2d5376bbd7eb4bf0540de21c289a35e5ca221b860c8f40b6c31f6b9c02257b12b8ac2dc86a9aa1a8df7735e87a83c48c353c0a1787489f04c4cbce92e9e974f796e33fff22eb6cea16b4992e29962da70a50ec420ea5bf1a6025018eb4f0372809aa69c7862d0e45ee6132da0a279a59fed7e45a8de3834c340d481bf74dd7ac16ea2fafba8a2ed14be9961494e04a0d4248fab0ae65e83849445bf0ead114124986e01f11a021bb2791f4057a684874cd0ebfa88e1ee726e7467fd729cd7a04323f5a1bde56560afeace8cd76978758298f82d3f40addaaa44ae30e4b79ef4ca9d4f29a55e4d151ac662f446ce819124fe8fd8bc5e24040d963bcc3429c80e05bae5f4134423e1cf329f4d352f05a8bd88fca5ed09e74a68617b5ab52b710d6f4f27a65784f5b129a62df9a6df285ee4eab2605e983f19bf4bafe58df11489722505962b972965fee5f04901c8fdee7eb24dfafac1515262b831995d7db03643939402d143d72fd02d1961e0aa69c41eb48a7aafc84dae214d92b8f167dc8da25fe5542973cf8771151a2e9ab83cdcd18d32e79ee6e8255765cdd80b676357eead4a06485dfaa7c33de93fd90cdeb238fa719075ae1cd48f985a56fc3c574d93639d0b6a90996791fcd32b698a11ec7825f28adbbf18e4f8eeff59a759a7de85c7def3ffe8770b35f82a8a22bebda1e26a386c3e65fc94e08c9f47ee21893cfa05f1fc7afdaeae9b0750b8739d0d06f5a7fd78e1bc19cd6447c89809a141f7975523373f993f5e531f0614231dda69313253aa5db912e3a76e8276afb93085c1ff61eed88600691b873a71c97d9a0446a08d608242b2e225619423a6c4ccb0b3b61e0b79bf7066a330e9f412f0cc1ce8755bf4cbd54f3361c6d6d984485b954ee191012459e2cba5949c2a613db0afd172f16dd8b3740bc42dfe38bd2207a63b057d350655b5998090f8b0616e41e40cfd716ae0a45fa0aa1346d47edc8f6f4cdf86fa0356827bbaa2c5faf975e1f72b01b945e9a2c55cb8768e92a046f4e34b1b20fe237e9c2d9382504897bc0a7bf30562d9da4e6bfbaf7bb7292743ffe23a507c29864071af0dffdce6ee72b8c61dd5f08ade69700d22f2f4c3555b4d403afb59ab5e472cc9a832c490018216d4808f726287ed73d992f15feacbb212a4f6706bf908aace2dba1a62c945214a557451c81e3cfc9a0dff47537e9b817bafbf3c9490a4a6347224c4aec952ac7d7a49b05c0b155109d8c81e8b9f2f840e2b5c001ba389c18668e98fc07db8bca730700151efa95373a207457a2a2b75c732c4d7092d04f21962e1c4770ff1bb108658890077f657a81841b22a562e11a4858790f052aeb7c43fcdc375277ee8a0ae13d75a36b240f4b3c95d6bc762d5f394471065e2c9a92a3671c295195add13c6608df2cfd51b93f393615a5baffb03e9294d1bab37d4f62f2998bb803605f628dcabf0e1c7a31501476856d92345b04c39aae16b1b77c10209f61e6e5d7737b5763d76256a673c15a8a78c7bf9a950ac9c6f73624afef8a9d1cd8b82a98963f51f2eecaa6ef53faeba495240eace5e445b764e331beb9b2505400fd70ba8987147aca5865cce73a8b9ed6cb87aa4a404cf6ce78ba444af6cf7de32bebcf9fd3f6dbfaa796c9cb53dd76c066036e932692fd1f02a75b9bc8f3941c74397b58a0dd342478b6fb7e44ed485f82dc4be7bc43c76947a2776ce5b592bb64d56fa3e8cfad395bc27edfb35f6a4ad097fca7dff9fb4d88e80a51c9a486577ccf51375d507487e4ea63da4fe647ffb524b52834edbedb309259aa524848c11cbb9e1df00e69aa7fc4f9785a042706d3a6cc565430863a5f4385a1edfa40d63405f053ceb5df2f0db0de0c479888898cea5525a82d0972ba9940694df97f8e01427f41553b1ff495db0b6fa982588e6b2c6996b9e458b5862eae0a44dae872040c3a3946c2a5bf12c9c8bf8be180a13552248e8d37c915803dd79882bdb8e8d6e3a8179248441df7f79182e426e47b8fe60dfaef3afd9b8a3142aba6f583a355b81714ea6bae7f03d170fb7bbc68cb062d51355393a77e2ec31a43a1903835f4aca4238b5848881a9db314f8679e4cad5d155158a9d16871f8dbe56e4c5c72255b6170afdf0e1a471e1f44723efc28f9342bc464aac00658340cfa096c2eb7ffd1d5bd8ebd7dc65b960dda2e6e6bed23fed5e7766a1d6fd56b413d74363c7a7dc130d63891a529a58453d1de82d0fc4c62642a973fbc3d5ba743817464c2d91e3abb918bb00d36700b537fa2830f244901f3bed4e90cdaa8132b6e62420e1092cb8bcc2484a366d2005ffe1eba5f560538673efde171bb71c946d9df2b4366860cc6a0e5f00e2b6b26b098f20c3680a77079b2e059407a41a6e61c1f00fe9ca6287c4d4be228c7417a853d974a8aa8b1029efb5aa1d092b0c18b224cd0bd653cc0b7d94ace5effe3fbaa54cf3f6603bc9ef7e4708127c1435fe7a9e3754ac9387dfce94833a378fe3bc32fc2e50cc27594ef8702adff11c1a2b9e838065a7162758ccca298ce39bd54b250e852cbb0934bb892005626c569d202f290c12ad0c392a1beb723a37931544af59ddf800c117a690fcf33de2d11b0d61d7564d94dcb9e9ac17a0cc7a028be819268bb6477fdd462f07f4a8c3dc8c9b6a6c8eb452ce0e81fe4cc3e948b9fa28b85728949e1b75e22e0fcaabe03aa58a24cf95f91945bf68b36f3dc107e6c4fd68e7167b4cf50db316fcdef62c9c5ab90fd92729b37c327b2cfedff4dd6564c16909f788f69c80fbe3632a397aff5f085c91780bd8eb4eb3be5beff61e35b79811704cd71f2b8614e441013e4de3cba932c1188283ce765b68a2db49f1eb8d5e2cccfc8f1dab04677eb2445cf2eaa41e769244588627b8da8daf3b12d03e3329e35a5a0d2609fb4aae05f4916fdfcd79753e02087c05d386e43ea49df41621ce6fb592f0ed72dd8e4fa67898b14710d39b941f951a66872ea18efde4e264b31f5485b728cd381f762fe6c3a121fd434b98bff97726349d291f1adfd10e7d3d5a4e41533d9692bb6cf954ee9ad69f6e0df00bbae03c7a2e7355a71a2d36488fd2980cec95bddf7c0202375b01a6b25afd14bf23341d3090c6dbd1fda26d3d5192a3381a197e439b6e686b9fadaf5e981ba78d3ad89213554dbe2bad60a6aaf55eea48477d6c2c71c2a39c62fbbd3ada25360424733f8ff7e0134341f3f4f05ed5286394708d0ac611896e36e2fe0c49ef102cccd6597022d93c2cd4d0d10a92f7e7eb4afee39641989027cc343dec56e54eb0562060e20568ef4afbe48faf8a62b67934724445f541cdfc5110a22a14ac5ca70a3f8475429c22d2d0a018a50343cfb9e4ebcc63a58faedc6efef0fc905192d4fb5e3ef480ec304973b73cf738785a1ddca4706af01649247d4c279b9d6c735a63f049cfccc7487b9f162dfbd41d57cdf3cbb14410cf7058e50cfe5145f1a9fe4a816267c91829a2f3c50432aa7423a0656ab3fa76cfcec07ac18ee9c8bc0f21fc6ce77cc599ab2c44d85799774062d011c8f40805735d88c79d9b5c252a1e803150b32b852521e15d7ad27228430c4c8f71784d331edcf2497e905fb95eae5f8d47fcbf75f3105963044852ddb2e917a5b372da7c163c66665fc03012ff896fe713ea225a0fe4702dda79f57468558b87755be6f6e9b9f08939c85b48cd33defbb830ca915df4a93642fc3f783169492627ea98dcc15e673fc39accb379d604126b03754e232ed9ef3f2d241683bbece211583a4f3ee224dae3970a70bda65c1658aa53e1e454fdb26162595a0d12164b5163175e0c6db104506d4ecf7fa177530e224862c25e7e3dc771b1709a77611717b981dde90eed5425c2477e33241d179baf412395daae91893ecc44170d526f82ff92d9ceee89c72b77c5a7675c2db04e33128b5b1a67a60dd62b3ecd270b15ef302f2d976c8ce3042d2d7f4cf22f80acb219041ee0da94a6abe1e25c96b8790b9b982dde5eaff70262e06e853013f047c6c8283a31e9c71cfac58efd37d0ed53405bf50d9c576bdb05441aaa7c8a0ec70543d71a3d0be47e3a17207120c84f88b306dc1abc2b8c245f462e985e362f7fa80d6218fe234810de3db4ab551102f5f1551dde5aeb1e2d2b74196534120d43035da32e79ee096a83217d2726eace6a9e9f95bfd0b60e649b7705a6a42c55cfc6b5b380ef4e612cf560828f3986531f71c7c8119ebd6d3ec40213037f72bf561c4a6e0e327294912d0acfc84100c187f6af677cba57fac914dc28c7617142a952bc6a123a8daff5275bd30f354fe9719243e20ba40f74a46f2c1ce8bb719c8856f947473a5041f736d7a1a2ed679a44a728e8d2ef6bac2390749de18e831550785121d90aa3885eabda30d15541ece44fcc3b75b3097762792fefad7d7921907ed57116eef9c23e5d3d8726f6fc0b87044852b40c767a74cde375cec0be104c3838f9ec742f3fd4873cf917b003e9a25a1413ae7f54830840e12d4e0b4c34ed285b55024e78c588129fdc7ef0cb87593a0a475d1f0327d1b5cbeea0f612a30f253fed8a591708faa403a87effda543068a37701e82f11fbe9b8ea58934be16694bffaf6eb7dfc8a62ea85cef0519407805b7950331d563b9b9db8762467596bdbe883bc6a7cc95d227ed94addacc2b5c0b0c8c7c34ede1d33e6cb8476985e0bba05063079e1d6e665dfc69449d299560a34e246348e76144eb50ac5cff4f34985cabec37180e4daefe48b9b43fe1604e352201062c1def02443418cff15901006db2755ed69175d8da7ed16b8936861cfac6cdda3d20dff6bcc7a895687a8bd901857438ea12d2656b0401c8739b9abd46607589c7b3192b4f5b2293ba04bb06a825e558836717dddcfee651ef89f85392d58f169ba43dacc3d4a4908ff828cad01147459037161e8d64d1f7945ab6606014aa9b5d53b5830c2ac06a52f59fc3dcacc6535303ff029ae543f79a641e2bba29e45e1f99b17fe7c4fc9d10d94a7552379f33e4c87e95d08b4ef50f2c1f80b7198547268d154c428158d67237c997b7431a816246bd37db676051ac9b7cfd38216a4edd7109af878d33606f928a590784324c8d91f931f0e7d4bd6818ce9e8ed47791b7c5a09b718abed0c96a778c14d746a9e02c6f64bf74276cce8972263e8d6cb65620d7679aa80a898452bbf6b16e3a73de5c934d70d7f67e0e0cc4fe678eb36bf2ac4cd9af4a1de9fac9a320cf63f120c14d9dd6ce5c7177b18949b7ca608116f0f98eaadcd7d6bde40891e5aba4447eb3be8a10853543145047696c50fb510fad3884f456ea51dcd9981d39f0fedced8e5b9c28529da5c0a9ec1b41051693bc9b83870e156ec6f8bbe837a4e00b4eccea781bdb7dafb30856866cea19c8098f6661e3db53bb9bb01f401e727f90be17b7b6375687ca71567bb53d54cf28629c73820558c581f1940fc204c8fde88f212ea6183858e37d387aaf0b8f109c876322f04ab20d774a1a32ffd68d26ca9a1e5e4c97c7880537989df5c78298a1547a97c100add178bb90f1af451277a1940bd3c487346303eca7b219b25e44d6d2825b40a07e9d1d33f5cd43a420aa53c6cc7a405a4a2269fe5dcb5a17d943d0691e3db04fe20ae62c63d0b389b66940be57a765d26929ad4260f36a258bac797e819e92b546d82dcaab8edc216af2c4343b21809ef0f957b2c5787355649a6588a4a1a786eb84753160c464f3c466ea6f1724b360640cfbbfb581b33cc97a7021e9712824deb0223f43017f503dfc610d99c77c80713f24b22f0ad6a17e872a2c1c6a6d3a44814734c34b1b791900967bb5a072859f3e09798bf92eeebff2e246afbbe02600fc55818d12c4255ec7b0d06c2ba0851b3e5b6c594651808ea6ac11c1ac7399da49e1dcaacf668c7fc5b323b7c155f9dc1531c9682b6eac7d33e1f0727cdd740ec297645c3a3d72b9e376225f145471906671da9c0e9ce133f522e57d911adbcbd4e039c8c742e72cb0897a494aac150f563253faec42dac843d6f615787ecc6c113337c6b2af60d7f9e6ed5cde32e0251eceabd9b852db89f9a63027e86e594d3a1741ac8e1b9425c78b8549f13e7e5547f6ece2e90d1bbd24e7015f11b35d3c3be3b9a3be1299e86dbeeed4a8fb39a914f436908b6aeca0384d70bbd14b71d65b90018bc8280f917d6317ba7807968de22608ddb0675c7e309352173827819b0d0401347331d2ceca40ae3027d6bba3afb05dd7137faf3f26d13f36ce0f7bd9d6da0b8c9a65c4ff1e65c3c978e4ca20a4ba3758600cba5ba727509639c6aebf5d06c6d92b3037aa65c3031f189415cdf23fcfde0c46cc83566bda454f5e077e07b18c0d9ce42908fe904043ca28e164d10c79d6bd8fc47fcd0404120b4b5ae78712c245aa3155526ad7e1cadaffb33070fedbeadf640ea5adcb69489c7eb17d4352c4781d5c7385ddc072aa6842b87bb639740c07a5f4d7f630aac3fa4021893c7459bc9673c385fee33fa8c4e41c87ea7d43ad0ee39d4561eb408d675d4211d7dfa0c46cacd5de656d89923b6f3b6a2e0e5579ff1e8caaf70508b962fef21a021387cd41a32bc3699fab77ca998c8e96cdb983e7affa4d3fec291f594cb56cc5eff45f5664bcaba0346b06b24e80bbfd890a16623be44b294a822e36b2294b68d97e8273d926bbf223dcf009bf66ecc8d791c00819ef298cac73bfff3f95122273cde2a331a4943326d706e6d57a46da740bd35f1c73cfb51052edb763032b45adb7483d490e8932f1bbc56704276f19517aedb357af89345b4a5ea84e0e75c7d45a1627521ef11cd02b7d9d0e0e18ef1deed315ff9068a8c23e04c4440e8d5cf0013c4feed2a561707af5700f4f77bb8f6e46ff703c075cf4f8b72791502dbb2243f55c6fbb972c4e481ec0478260e082b858174736cf859594720095bd76816fbbe494944353357d4ff9f8e0543911eff671db5d604fab6affbc2a28d6c771507177968098670b2ec0d11b92f6ca60fc7f7fca4305f4f911ef3c522325dc4cff15d23e72cc61af4105fa35cc3f0b7170b72ee9d058564f443a15188b5a73f0ca0b05f1dbe8ba6a3add9b95bbe244c3804be0615271ca66735ca51561af5120e500a538231c913579d9cad28184a7e67d051755f8a5b5b18287f58c15c38576e02ba51dea01154d377a62f3bd1c00b597b3675cf4d5745cf6157bdba58c16c97b2b8bb83e078ef8e906082ca6a8df9ad5c6becb136ea0a965828540caf7d7897dd4197755c3a7df3ebfd2b7dac1c12c960c235a6a1468639597e59c71c4c5b3a5fbd5b48acd138ff83ffcb4b91173aff57cc289896c3984e040493a196a90ae6aab8ce59fe35e33ea13c3a146b0c144b5fd7f5b34c6f9534cbb272e5da3cda900c0eb2c9f226a6183a32bac8e8e53eaa27815f1ca1cc467b7fa67f827e7421ef93df9d11493c2f6fabc05aea419f140a94ef3b4eb2827a6935a36e74b27a833b7dfa2451dfd12ffd1790ff4961dadda2bfb63e01d6e46dcb7a7107cfbccec8064ff78f17bb397d98d7391b5f2018c5c07a033be0d148dc1c0f779a188d03e74827957980088099a34fdfb5156eb678ad44f8aa72b0ebd9e4ad6be6b2fd1ee8c521e0408d99da191652bea8a673a1029036b887027def702299c6721c550889687ac3375795b30388f1234f3ab8ab4e3a17910d445f276d6cdfc0440c3476d63b032cbb15c2ecdaafed5b0598a90251f1db1abfd22a640532ba13b55f2746be388ab59ee16cbf2489b6a7c6eb1be844f6158d733636fa700f6f5a4c0690410c3a5860da9341e5241b7b1f3484c61f831156b185732643e2df5b7e62e856b8b41b121e4734d533455666575c8dd1587a5b237a9e54a12f623ef0ecc33197269acf0fd3ad5ac7f1e88e2b1ddddbc073e5d3893e9494ad203dc14a28b1c0f66f257670c920ea6c77ec79e5b8d3484cd93bfbf63dba90acbef7cf7d9135d00a70c4c8b7988aec4bd43367814a93ff0d7b76b916973fdad8f4e24195bb8004eecb1f054a98973713c2b2f7c8c90253dc505204aee08274bedb8274e0aedd980c253300e2d314fdcd3eb5fdcd629aae9a2e2432a6ffddf20fcd8332d84157b50611aa3f4362900c1c9857e13fe581616b3a002efac06c4027e2f87e08107ee3377712a4b370c620176ff9f40f2a95dd2ddb4063f681097166ea2328100eb0cb3dd0f63dda250b73a91972840b9582cde47b0403f317c183946a780118e94d36cabbe87659e644907b57479c71aba5bc26c5d0c2405ee04f171e6d6834aaa05c5fe25379b3165fedc0cc9fd981a512f3601a79ca55ac17e36ce6d1222d443d85b2d004b9e61a8f9a71dcac0f606cda97bad823748ee5aa51d0a9afade8891a40cdc581c6b0a5befb04568dc97aa10aa02db49b89187689687fefdec26f52e18f57c398799a18709b05488ec244a5b44c5e74c287f99d55c5d997235359b41587cd82f34612f77d67dc18d3d5f170f7db6618a1d0e7ca650deb8cbae1b7a1f1e669f4927ae23217f2033b7be991475b378e75a13a35c0c5155774ccc9b44336da53f4165380b1a6cc5e318a0073259759cd8fc2c1588a0725e7be5c3ca7c0e4aa14a2a39ec991f93e42b8f43eb8dfc4691f0fb20df3dd2c7b8afb56a6e6bdb2460d230039232af232244b29e877693f767bd303ba3b38898631b39beb57f48d79bc14359bd89ce0ed26a23d478979c21eee3d2b3834847f20c9e40bacec23ae71ce559723582c407243b927cabbb664eab4a3a90b05553a5c2b3227c7f22c72011f432b1c523950f5e06c69c48b32ab2e5893bf9ea754b91d49fd080c638a75bebd234d7a10747991aa0d0eb4adfda31303344c19ed52c2565cce5a69917175d696751dec797ef178c0ae8473aab9f5ce36cbf9316b74a6c6dd85a05c887eef575cb176940d4abe82540d729a2c4ef1d1087826bd435eb3a689e1745251caeaad7b67bf1623e88613ce3f9f8c1239225fe414c1ae5f25d221214b26fc4f37b30bd031b4658eca0d43eb74ef65d18c9ad0214d8706ba2c9c592c476349e728246d476210dddf36bc329fa447a780eac271e4b02828a3aa2085579ea34620d6b08ccad6b3852e7914fa8801807d4891efc547af17e782487b6780b1115c656c02b4dd182d5c1155430b28bb1bb96d052fd21b890d70c87a1ccddcb18e8708b8c86e0e6d4da5b936ef3ae9f5fc68793e223086e0a7dc6fbad64a4b49aae74dc83e60e8850b0cbf9c5dd6bcea97d51aac21939b320e3662f2e77158af60e3d68c395d91df459359dc0fbc0f5c47f5024cbb4ddc2f496021531088298760dc4e41d6bf63fbce49b4b0c69fcf5db765d3499640b61d4896d098e671a07911473e041f8c54769fb3d07717d55c9d24c8439a6f4171816bea2643ef54c8a84ea3b91866eed4379107b860e8ea9aa657e66f8e81e1ed1a336957e66c93e0fbd0ff687584d714985ee1baacd8633e5bcd6c15f53fdf9c7cd4a7624af4afe5eeb8773b0ae7ece847d83b02848aafa2aa9988c594d27e97d0d25884aaeb74cec4a673adfa8edbe65114e60da95733600a090800dac7a69b2995722a2867a91ef592e89c17afe0862e040008a02d19f36304669da2a2f31481900051f9f87918d4b289f18cad30e6b64e606fb3f8c7ddc263ec2671ba91e1416dece812f959a91758ab8f780b786129a959e49ae4ba95283c0ec9f164d9f3b005ab9c7717136e19b758e749203cc5c409c215d201b72024fccc0133d256584db7fb28874de56b0cf9bd3732f1cc02f8157934e4d643523b427af2aaf96f66faf4e4667c0772dc0f08a9b15a2bfd59ac206751edfa2ad37077f3288ad578ebd636be079cce09ae65481c93d8f1100140e263716f9ed024d54489f3c5eb092a7f4e92679edda6f715e480b0ea0229e0b8aea19f40dd8b29066c275e607c639c0e79b8902e3ebed2134029eeb157927d4ebec3fb4f22efba9f72eb7a7bdce79f9e0596587417addb14cf79d2a057801b31dda16594f52134248e2f8f216ec8b9e42706da8c81c5895c497ca4eedfb90f2ee71723d74dd34fa57fc1e9a1b8825918f60914bad52ff4400f79d6f8625d6efebcc547ea4dc40df5fed1f508ecbb7ed40a6cc50d436a668118c3584a8164259de111c738335d41a301fbf9e270ddeb4c6846cc457cffcab30780ccc96a5d5b2534a9952d1bd6c09374ebf357aad21a924300f0386f9a93e4c7a5f7481729ff8b8a17251f622aa6d32d9bb7031a72916d2b18a760b457887378fda25ab4bf40cb8706f3508", 0x2000, &(0x7f0000001340)={&(0x7f0000000400)={0x50}, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}) 19:43:23 executing program 5: perf_event_open(&(0x7f00000001c0)={0x2, 0x80, 0xc7, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}}, 0x0, 0x0, 0xffffffffffffffff, 0x0) r0 = socket$kcm(0x29, 0x5, 0x0) sendmsg$kcm(r0, &(0x7f0000000a80)={0x0, 0x0, &(0x7f0000000700)=[{&(0x7f00000002c0)='0', 0x1}], 0x1}, 0x84) sendmsg$nl_route(0xffffffffffffffff, 0x0, 0x0) sendmsg$nl_route(0xffffffffffffffff, 0x0, 0x0) 19:43:23 executing program 2: perf_event_open(&(0x7f00000001c0)={0x2, 0x80, 0xc7, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}}, 0x0, 0x0, 0xffffffffffffffff, 0x0) r0 = socket$kcm(0x29, 0x5, 0x0) sendmsg$kcm(r0, &(0x7f0000000a80)={0x0, 0x0, &(0x7f0000000700)=[{&(0x7f00000002c0)='0', 0x1}], 0x1}, 0x84) sendmsg$nl_route(0xffffffffffffffff, 0x0, 0x0) sendmsg$nl_route(0xffffffffffffffff, 0x0, 0x0) 19:43:23 executing program 3: r0 = socket$inet_udplite(0x2, 0x2, 0x88) socketpair$unix(0x1, 0x0, 0x0, 0x0) getpeername(r0, &(0x7f0000000080)=@pppol2tpv3={0x18, 0x1, {0x0, 0xffffffffffffffff, {0x2, 0x0, @loopback}}}, &(0x7f0000000140)=0x80) connect$unix(r1, &(0x7f00000003c0)=@abs, 0x6e) clone(0x20002100, 0x0, 0xfffffffffffffffe, 0x0, 0xffffffffffffffff) perf_event_open(&(0x7f0000000500)={0x1, 0x70, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) sendto$unix(0xffffffffffffffff, &(0x7f0000000280)="c13045b29ae9d769a494822c309d8d2f75ec37d79b3e984253994d2f4d2dd4e43384af979469722a3d0afe5850ded02196dfa2a56b556ad0b2791993356b81e7cfd2d69c097409bfe6a05e56752278931d996a7b9ab80b34e492220aaae8584e3652b8c32652f371bd379f03b89250d0214a7696cf71fc687495378cd67fcfc7be5e19c1c0d7", 0x86, 0x20048001, &(0x7f0000000340)=@file={0x1, './file0\x00'}, 0x6e) accept4$unix(r1, &(0x7f0000000440), &(0x7f00000004c0)=0x6e, 0x80800) fcntl$setstatus(0xffffffffffffffff, 0x4, 0x0) bpf$PROG_LOAD(0x5, &(0x7f00000054c0)={0xe, 0x16, &(0x7f00000009c0)=ANY=[@ANYBLOB="61124c00000000006113500000000000bf2000000000000007000000080000003d0301000000000095000000000000006926000000000000bf67000000000000150600000fff07003506000043fe0000070600000ee60000bf050000000000001f650000000000006507000002000000270700004c0000001f75000000000000bf5400000000000007040000f0fff8ffad430100000000009500000000000000050000000000000095000000000000001c0a7900009d3c2792432a4fa650c512aee994a5642cb064ecd5615f3196e3359aceb7556e7e60bd5d2e4b5992de991371274fdff6e79fc722f15659a7c85615c1b88bc894123cfe2314e887c1677fbefd35893d883a2c559b7a34db461b1974af360eace66cec40d92706d0bbcc5bf6fec345ae9606c3c1a348f9b395592c1018e5e4b41b13000c94df1f2db24c67d4c7ba9ec035883e2791a9e9dff3e8bfc7d1be000000820102b1900000000000000000387a601e3a3412086dee84efd375f0645f3301f55d3b9efdfbed9b430bcf0418e100bdff1c8bcfc0c229874bc3d2418bab997c8bef9aa55841caa572ddff9220c67c9e17bee524c3dc747445763ecb0a7f2cd12bc34b0fc0271124cfb5279195f701000000f77c71294bbfd85878726c49eb89085967722da6cb884d1afe82f7f722e38397996271700241094d272dd8b754b2dd36d44f92991a7817450bc7921dd372e621dd447b86e7ffd1bdc198deb495cac0995ca3ef6c1affb693ae366b0f11db6ee4830db4713e5ce6cac6a27e29f171b8e9f172c3db24558d77b8bf18be45c50b3fc005fa7b134dfc948f6015e0389d7f34cb9c02cf517c8ed7a9b6159c1446ef1c2ccff2bde95aa860ed9b836d6b8fcab7663d9bd8415e6f90fdb007b8f3e08de3a638c4fdb8562eb85173720c1df1147c9f5013c82fc98604bd70cd56609a6b739437e3010000d9cf81bcb1d262845762f6b0a284cc463b42492bab0f7b25895cc3ba8bf0b5e0fc018463d03a73fa85429725545128b0e9b550a13d0dd35092250bbce4f618cad2375a34c7f15c3096f300004468cf1aba4a6f21ed0eb3681c696320d3251b7eab79ad8b126500419e25a94ce13a7a96decb79c90b8df10b1e364cf97eaa49fd22942a0fad0d814f230f954eec84ebb7e20594e2e6f2371dda9fb3977f33c516aadc9bc51f23b12f761c4a0335cce4fbe7baafc8d0a6c6d8d0ebc20400000000000000c83cada15d686de0a0bebb94491b4b655f94dfa2ce197dc845ad83ddbcd4c896639831b8e5f254db99752a86b576337ec250c6f83b8cc300f8ffffffffffffe9f5f4628de6563809cdbe2101399c00000000000000000000000000000000d041c283edaef472d000d169d827488760c9eaba70ba10633e1ec690ac69650b22e96fb14b2a8782390bb42c2e80d24747ac70ebbacf42f7b7f2d5c8b32e999ce7da869b165932bb588ea0f7a044d753"], &(0x7f0000000100)='GPL\x00', 0x0, 0x0, 0x0, 0x0, 0x0, '\x00', 0x0, 0x0, 0xffffffffffffffff, 0x8, &(0x7f0000000040), 0x1f1}, 0x48) exit(0x0) exit(0xfffffffffffffffb) accept4$unix(r1, &(0x7f0000000580)=@abs, &(0x7f0000000600)=0x6e, 0x400) socket$nl_route(0x10, 0x3, 0x0) 19:43:23 executing program 2: perf_event_open(&(0x7f00000001c0)={0x2, 0x80, 0xc7, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}}, 0x0, 0x0, 0xffffffffffffffff, 0x0) r0 = socket$kcm(0x29, 0x5, 0x0) sendmsg$kcm(r0, &(0x7f0000000a80)={0x0, 0x0, &(0x7f0000000700)=[{&(0x7f00000002c0)='0', 0x1}], 0x1}, 0x84) sendmsg$nl_route(0xffffffffffffffff, 0x0, 0x0) sendmsg$nl_route(0xffffffffffffffff, 0x0, 0x0) 19:43:23 executing program 5: perf_event_open(&(0x7f00000001c0)={0x2, 0x80, 0xc7, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}}, 0x0, 0x0, 0xffffffffffffffff, 0x0) r0 = socket$kcm(0x29, 0x5, 0x0) sendmsg$kcm(r0, &(0x7f0000000a80)={0x0, 0x0, &(0x7f0000000700)=[{&(0x7f00000002c0)='0', 0x1}], 0x1}, 0x84) sendmsg$nl_route(0xffffffffffffffff, 0x0, 0x0) sendmsg$nl_route(0xffffffffffffffff, 0x0, 0x0) [ 367.953097] audit: type=1800 audit(1623095003.723:324): pid=22913 uid=0 auid=4294967295 ses=4294967295 subj==unconfined op=collect_data cause=failed(directio) comm="syz-executor.0" name="/" dev="fuse" ino=1 res=0 19:43:26 executing program 4: perf_event_open(&(0x7f0000000000)={0x2, 0x80, 0x27, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}}, 0x0, 0x0, 0xffffffffffffffff, 0x0) creat(&(0x7f0000000140)='./file0\x00', 0x0) r0 = openat$fuse(0xffffffffffffff9c, &(0x7f0000002080), 0x42, 0x0) mount$fuse(0x0, &(0x7f00000020c0)='./file0\x00', &(0x7f0000002100), 0x0, &(0x7f0000000380)=ANY=[@ANYBLOB='fd=', @ANYRESHEX=r0, @ANYBLOB=',rootmode=00000000000000000100000,user_id=', @ANYRESDEC=0x0, @ANYBLOB=',group_id=', @ANYRESDEC=0x0]) read$FUSE(r0, &(0x7f00000021c0)={0x2020, 0x0, 0x0}, 0x2020) write$FUSE_INIT(r0, &(0x7f00000000c0)={0x50, 0x0, r1, {0x7, 0x1f}}, 0x50) syz_fuse_handle_req(r0, &(0x7f0000004200)="000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000dc4e00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ba045abcd5dfc67d000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000230000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000209bfd66eea2105600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000dce8f517e517209d0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001354c4b600", 0x2000, &(0x7f00000062c0)={0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, &(0x7f00000007c0)={0x20}, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}) syz_fuse_handle_req(r0, &(0x7f0000006340)="550213a07196529afe0c0440192d7e6b690b2971077c794178f51d5e3ccb8213c2ab2c2f9eeeaac3d26a2f97d4f45f2a79306cb35d2773c4877c1510919c87833403a04e443f0f338e5651891573291dea98a917f4f62456553ef1e4c2ff39f3b6bfa857c2fde23f3bc356a09b1ce900401bba2326ffdbd94f33d8de2e2e88332b80cd5fef8a5482b44a6e9ff53976da78235538407a23561df1fcb2aa25e96496e60b50e63f955b575f6ea992ec1120ef5d703a365589739a47991ed90db8f5bc075ebc30f1ae98d2dd9424afb051063d9f8b29b3891c4a15a7ebb498efd4ad84a1432bcfd862661ff920704ec2481ea567b9accfd0089aa576182565159cb218bc81fee7abf14cf7fd7ad2fbc9f84b66ad2ee9e72efe6de57459a0d8ab7de571be5409f07b18e19573dcabc67e9577aefeb5d076c8b331244dd8f7a4be820a55a59b007298911dbce2d9243184d8db00cc124833f82d55562ad21f64dd300a0a0abeaf8ed2cbd4e373cbc6b40510b77e9742b208a6b6b2166a9b640c6013a905e7f5966613c40b14183adba502a66538f4d146d80e1e38bcfa430b6ab8f23772c41fc291a01817fc447cd8920886669c439c31639781c8a1750182979dc91939a93f2e8df8823a83d4c00a109da1b99aac9f5400b0a18187cd936c69efea3c5959e34ef5ab1b4a230750e4a121540f88d01f97690c18ea599525db59dcdf9915ef90dbc390555742f68c333611731945467777315115fd08343175c16195186d91c317e64a2a557ceb44c930c144aa8f3a1600d064d2fbc841226ec4fdeae163c62a293851c9aa54715cf3caa3bb22012ab2244821077a83b4c7f6aa67752edd136d84df86932c625b6beb4de2499915337bc62c071343ca01d207913718d363abc6e1a0b36a891d46016f586c8b8cda719a52bddad74b872928cb772d86db68d9431686e742ad8e0d83597e94d6dcd01bdb14b8b5f76e56ed293fd7ccfc3d25459b5e2e45d6bc8cf7159d9f819d0935f3cd662e68d1d16d5bb2ee3998d0cc8fdf553356ccf56c89a5e0ca635faf9224c81902393b1fbafb098a86ebf6942106d6ff686f4ac73fb7c86bfccef7852ac6304c04ef9fdc156540ef072f20a403a869dfe9e8db9c58e1261367d2b8f9ba76a002953ffc679fddb9046fc94bd365e5d932cbf2f5e9b271300d1b90481d72f9fa41eb6e206c96c1096756d4de822999d0396eff77fe86c2bfa2b3dbdb0cfd54b3ddf378a0bbfc4397cac8ba586a3d6b4144e8a9b7a7ac998626afc7d1197c3ca954e48fd7f63ea52edb77e03176720deb4ef7942e604e5a4f500887a77b22760eb33d98d7612ce737af9ee0e78fcb69e7838adae221b4de45e8837bd468f7a405e5f8ed26275b22feb32ba3f12a893479f273e5eaa73658f1dffe09c10baee49dfd8df0501000d74198173d277f7123c4e131fe7db8f74d0390f0222f92c5859d57c709e54b4ad6549185357837b4b7beb28687c35fe62502e1a9a1dbc0f803580a6170b56e08c2d0104fc12c9b47b022bc4cb8474d4b40fe0e13f89a6b6acff2f11d24871ac50c4d10a63080d8f8368a4f982e65ad9fcdd37d809b1b55fa5aeae6377634a973482354ba216d9e24e39edd327063e4852c05db7458f56e6a0dd01440b0ead91570967008128dfc43b48e73fe380033e90848e9fd780be49aba2ff3c97b49f556f8c2c57ee69a15ff01fda1df9ff4434d7aca8049b3146255f870fac754dbb42945165ebbe7279b4998576f6e16332896b48e893f06148b7d470f513efa0f1272ae8578ba66e2042134cbdfaa1cfdd36a7f6c1874e858029429d9bb4f87eca7f7cf1900cd1667caf0f4cb74135301fae9e958f29bba29459de2208f84f4e2764e1fbed3aee309e74fd8598c602d6522f7aea29b73af70bebf10c924f588d7024855cb84f9098cbc7141ce5a6168ecc6d28e774adf9eb6aa9f28838e3e380b7b12dfbcdaaca0401efe633ad4ce12138d8a995b8b27721a2815c5e6331d2fd803c13e3175a5c02c5b5344409b06369a9d4b457db201512f00f53df67ae21fa597f5f3709ebedcfb347d6bf49df34179d0b7169a75a15af29869b2def01a7f5af087e444933ba11d51ce973d59a47efb884daf6cc5258d00a3d7f3ed3cfe450c72cdc5900569717c8699689607e66c5b5d6dc2ff8dff62e2047b30e80877827d2abba12e0af85b77246c7bad649631a9a0853cb79c7ba27f5f6ef5dac4613a7b5d1de79d83958ce4b37a17d593756f9c19cf3fffbcdc70eeb8cbecd6e77cb03e66fa3846bad89a2fe1e284f1fb227340cf4f4ce5bca6289c52410e98966446b4369d261ffc8057d56b625ddb09160298f1a015c1657c88603822566d9b4483801b4f5baaab4c530e61d9378132ec647d2444c04c446d3f2b972a46355ec08e505fa9995624e281292736808c8fa947cc4564c870f03ad931f58f68512c1327eaed18db6a55960ef8177b089011617e64df1d8dc0b9eb3010885f9eab7e098e5711f9e41f74d7b28943586666eb74ff79f67a16ae8d7e75561741c85c5f822f61b2552f877e739a77e20678d2c7a86cc6caa5852278be0cbecc1ddd7674b872e5d2e69c9a7383a33dc8f8c56548da95621211ac70dd89aa1862fa8969138e84810ec854b7b923bf7510ed97cb80037a84a8e66650bba2319dc30bbc3f40820e1b389f684db2d30ef28c470d82acea65419d20f518bbb6a99d734e82ed60fef979e6115fe870498670af117be3cec9aaa577caf1f61d5bbd12ce72a35b77bbc366c6790f44464efafb9cd8f9a097c6ac5423ed20e335c3992cc950b90fcbc7b4c3df2521a31d917af73058c93c1f3e26b47487736691c8b1370ddc613bad413982261e4e036579188b64cd9f39b1b4a32ca356769621c507b37f814ee0480b1a966ee9ebb56d6979a9d38236664fa1fcff19c8f0a429d86632e195e569ec47035c4eafe9185d19dc5e8c635a361af2b4fa33815361c000844615bce501648ee70730d7a1b1da4f0630b1ca90904f80e9e1efd1c8e1b61b05c4f040d5a0430381a53f4a1570491719560a3fb920d6722cafa0755605c955526e618221d1e4e766c35e84bd79ae479b5d178b241662cf9a124825101cc5e1373f3c9ce7625f7f08119fb011acceb88a9ff553639e7eeafc93b6135ecceb6eea4c3dab709005dd7be2f1490d1d648c99058f272bc325ce5fa663f4e68720a5f2b31986c66580a2be4204cf311fb3e5d61310445e942712bf5dc7e66a9370a5a4afb6aa03fefa3f0503d53cad9b79a3ef2ee9000edd8990d75ffa3759dbf0469b6e393bd3627a768bea18f533453b38d17dade925f7ca6babe27adc6fa3048d2a65bd2b0fd840a94ac5f317a1c839738ac89e7b22d1766308dd8247862f304fa51d727a27f0137fe19b371e5946555093e7ca69139c48afca4b4ac46c8d2f56d5e673e8b52dd94857fe953d10ca886c921b6626e869ac794a78d40bf49a025860fd57a0f437a4e650a9db9cddc93f8556482cd3676866d903b0f70601cc4eff564eaab292a4208d0534321e60119ffa6177934a2d1d7a6a1f1803e762c8d30e2a0d5311148bc21e4745b7c3dd57d0a616a2c49569942f2b48360df6c54f7a70f8a585b3a0d54feb7986d7d72ab0e16ba14187af4b9ac5a69428f1f61fe25e13cfb97ea30fd9a43e53b6841cdb766d6b3dcbc70277f2a0a12bff718b5bc50dec6fde5a0e24d23904edd201c8dfd51c1d198e325d65c18ce4d5ed1c6aaec28d40260949ed5c6bdc90f976c76dfdf399a9f9789fa9e176910f7ffb6427c3821fbc83747cb0d2ffe34b0b18fb34ddcaa70bb4624acd1ecf208e428b7fe89ed0cb0db2a7d74b284cf893807b4f76bdcfe9088912c8e83144b78ec8407aa37e94e5454946890174aa6be77e42fa0d764ae36855608d63d269164c3ca6a989232967f168c3f9b41c1204e02d7e9dc06010106f6b41987728775a5c31906bc7dfa33808e5523eacf7c914373ce8e61ea29407040feef8e9511fc04b7f2f9936a3161fccb7deecf83f507840898672fe13846ff8185ee0aa6734a704e4b7ab6ba3fb1c601e57528d68f8955fe42fcfa2ab0faae4008023b8a34ce4f861b5b86b5b507ac1cccf38355c5f0191e8ab29c90627657d6e100957cae6fbb3f0f4ae2049ed3a341732b4730b5bed1dfa97f0976dfebaf03a305da2a79d6b8f2e86f46bd7e257d170728d5aa55f786b5436a221b0d74355d55123fa1c9faf017103c3d6a6ed1e8e26fb8defd944c49929ff5ed4ead4e5782d14b09c9ebd593533c907679aa6a0b94fc8494291acb16e4bd2e4b953ac96f90ccee9e11ec88b4f590289915a6368716dc3e28dafcc5eab060d2c48911f288e501226a5145ea217e834eee7ebf0945e53baa08b8d72acc67fb14dfa47421081434b291a15babb97588c6ed5c7e79299056c70f5362953ef499b7a88c373a23302e3ecbc229824de95f12595f12580a3898533c48ef2385d7f398ce31c3dbb1c02547e84d0210595bad9a149ac653a3537edb419316f244f6a75108997b6597700df352b66acfc191c6b234c5c7beb2acf943f8274e0a159612f4ed440f3ff715fa2cff21b32444e5871a050e33e17695f1e3e7f65f82fa8783870c0c93f961807c6a56e666a5443948e2721570a9068ecaac4839c8209654e2efde43141b1551c9a966812b13bf4f9cbba828a1eb948a1e41a122e175c0ccaa9794660446cf18335ab13d1675a26eb81b1abdc776472d5da139a507f452159e3416532cf59eabfe01e72f4a4bfe86d293a7124ae3478443d00452c1a9be915f54ccee5d857fddb9ee4986c9186857fb4635a2bfb7b8885418fe48536cf60c67c10c729f92a8f91826e85e34e3eb78c186f2ff93b0972fbef4cbed448618e1c2cd7b5cd1b5d529317981b4ed973080615e0b385b41778cf536d9e24fb0ce048ec0dce5b075febaaf34de2cf59d9030e1a9ba924bbb5cb4098d82c511cc42cf9823ba77849bc867a6876096561ac209c2659baae0374ae4abb39b0ca54874eda8425942012fbca984a4c6c21071137eb4399d4c6891222c8aaf43cc78b1c8f2a9cec6b5acd748f9ac4de37b1dd18cd0f8d7f20337fd392ed10258457950184264a559b80c1ef92868676b258a9b579ea604adc0bd388a8b30822af1fa5120aba51e38e1dbaa840472e1f1f0eb86af5ec9f87a7324e49c4c0bd2b9365cb3d8c92acfdf479548acc9aace7a342284eb895b564fbb8bd577d4a310dfcf78f15be69da13b6710abc4cbe240a62798fdfba1b8a019f9c5fb462bf040cce44a1c8bda3819ea42627e71a5bbb0f8f3648daa2d26e81fff4dbaae971deb7dbd407b7583c9afdb7e7dfd7b81fbf1ca84d57b27e059acce70cb27ef3742e81a77889b01795adb0f070077b758d80e7a05dc66da4b9fed081100c3ccb5fd8ccc14dc36173673917dac8c6fa72c5989d0f6e0bd97501cbedd0a97137d3add8444330e1859005804e485fc997da58927f8cefabd995124e6baca61029dc3c4b091234610e04a7e8457c1dbd28a542497035615a990cd675d36eadd703492562404d366ac4359e66e5e8ec9e40cdf96cd1fdfbc0f2280d4358d96bdec660a6ae473723884aa79bd61b96ca11a7175d68a401a0b77882e7a44b3765a582018abe6a367d1478f5b06859e777f35d8f01a39c7960cb26477207dbc9a0a2af6d5beba095c606a9a11ee236aaf91e6b3b6be0639b2a13bf4471acc9f7f2f052d2a86c7ef0f0afe6ceabdc4f99036a05120b0c49cf80ec92b62c766035a5887f4bc8fa1e0c9c69a7b690c7cc2c8870f8e7beacba9b1a27c66f8d02e33c957d923b0a9dc4ef2b3237d2f83c72651966f8b13b24e1aaa5dd0122b75e3afc4cd478e296924349e077fab31a38e38cbea1dbc22689b82a1a4698fa4841bc0c0530dff14f368537c07eeac4a9c2e02e3b21669d0e039af22a4f38d4c21d861968bf312ede1ff02893fc44197363dfd89b5b704de61d609fe1d9013508e5b2276953ba5b1f8018c3a7b3c233d4cb3269f10ee6ca2fa9de79efe709659538108b36c1b71e4d2c3602459d57b8f46ffb541e2a6f4a19438fe3bd14be3e5682ddef68519cb56d79dd5b2b40d1281e84623b01af3c11f7b2cef780d06a0158ac7becf9b7cdc51618db8e7148a93637ca1a875d8ca2db07d78a5554760b792412c7c108335969c676888fa2d180030a8bbaca1c6c36b1fa26461146ddb13c6dc4247f18985a6cdfbdcb5a3455f497cf674fab04c84906627d32a0104d1cb3b1ebb9f398fb6c3a9af34a05ed7bb900335f1b84d2ffa2a589ec46f44399f4eb8f96928aa073f414765347cad3b0e03d551166e5e2ff9a89c15dabe0d46c925767df0f85e9c438ad99f0309400efdda91d4e61d0e592f8fda490b6791e41c098a9a839e040f5580b2d70f714e3b41ca8cb7a21fc2a778eb18a1e2a32c237c665fc4c496732e58b16f8607ab26b07bc59147218a8011068fa1d117b7e13a3c2b8cc6abcc8e184b0c7d061e94c0cf8c61b6ab194f3df5747ce68b3923b5998901c3d1294ba2a0df9fdc7a76c505bfd172a5c5bbcc0df736ec54a2a11b3a26115f1afd382adba6e3fde1e781737c12dab5c19bc5d27e91eab6579298d4b46c60c200d309df433841311008089ce0ab703ad7b7e17426391e22be7548e642cb4eb4703179cb102643aad424ddb72267b6cec2702fcacf19825303858fdeca7d5d3979c900db3ba5be2301c04a78c58ce20ac8f4a6bce27c4865f36511a4adb99ea25ebda5a6701c58347342ac876f80805695b8ad67501a793670fc76221641b89dfc5519389bc5ba56cd17b47bd2e075139c8db24e4c3a332723358ff5b8c6d3dc53fc79982fbbb6b887b36d52232d6d79684fed3add6c84fe070aedbd833165e5b547a3dcbb4977595fa9fb6d7d8b151858c3967b3e599571340568a2a651a3c6dad3a4a24127c28db3f27853cf3738a3476120f845df7803690ec6f97072b2e040995a957dfb6e3c27d55b7ff94f0fc44eb27b7fb81d5601ae88bd6de44163128bf423f1f76bdfaa9a170e43136acb8f5d3bde2b81e381635d4895f224fd8b7d9b04c8115454b0505ee03b332419c6ca3ffec3b127b036144ad4ea5b7d97482d298493e04c994ff2152815607c695991e85065f2c66a36a0c347a1e0b10ecf39500ed1476e9f6bb09ba569236d24459def02c37768956e567ca7c5c1c2ac05fb818d8610da9fb50cb6263edff4b6a165a13a1977f14f3b9101831b0f364f26e803ebede14a32fd37c5067c2be8c50be29d6757767424248ffb425d1780f9f164dd1d5a1999870af4f73bb09f632227351e0c5e24c357b7646edbaa599e0b62c569e32dbf0080dbf509879397c90ce4799b59e8888ae27844c760f901197250d395780e2e1087bd327c155dc31dc5b408e847b031f93e48345d3b32387934c9e68c9556b9d275d1634adecc0204ffb35d1960e736a34f0b07e2e7c4ffaf84ebc7ad39de16f968e1462c5371db06fdd21fe51b08ca295acbfe676e1e683bcb2dc9d3522b86191a151ac590fec45867cd81b97fd9a060e0e26f362b842390ba6dcf66ffedff1d26b87016b7108b4eb4a6dee0384a789d2305b871d7caec898358f01346d089844973aed3ae0a7a8fc6a5cc90a1533e0bb3696e243b28927da1630837a6aff33c2e8af1a7bfbe2ff8060d8df29f6b9643dcbe2e2a8721795636fe7b3187a48dd08a003f27dc2ddd76fb84db15572e0b2b857ed2ffe73526d92ee2a9b13f2693d2023bc7feb2ce769c2e8aa9973be33c77b5f8e147d4c7f414b18c9edc8cfa0169cbcc0c26d59f016fa1e80157bd8dac895a794a7211d83c84c7e003e663f65532018b22ed3e67be4eaf592a8a18b986245f6a8fded9b1562c6a106e04190cf0260905561565a131c3074a7af5a18dad69aa7d62636b9313c1d3e5689671912df51131315f715ea84d57849dce2ab105af433b034501128e2286e1d05384289711dd151ad097484755d32531508949a6e3caea36e6858ecb895f0ff5cb71f8b1cd677405139d5e95c6c34f421b0b1e0898aa74f7a96d7170dc0df19f1b88a0463608d964446967262ff7acafa54b0f95cd0c1b01c232db641cade388b6f348784e18cd33e97c132dfbd501700108b59ac80692371a4bca4f608d9357c6e1458cb372aaf02cf8742b164bf69aab3aa1bd6911202ae7d13f2d1cc27741e4856c9e2d654f72c205a9914969317b5dcefc8137aa564283d64f71209f82fe928836da1de181d6a52c9cdf1be072f8b5c44b063e7e3d629157ae1a768cfdc7105c6b50234b1dc8412f6d98038520fed97db8347cf02924291460fe3d392f21d7ac31aa6e90995756b6dc198c04a6c6eb6c5e41e1eddb8c78feff740273acf8938c0f52c108e5bfd7e559d73346e0b97595125992bfd6aa2097c0ff502482a641f8fa3b2f411a9bbeb9f8c03582ecd1d756013d793bb15b4c1f45f0a988f7bff685c493df30bafebfdcbd6b2ac26a743a0a21443ba776f17f021e80df5eed4926b10be1c952f839f6c87bc2457e1b95f73287895961a0d5874e61da6214b738124fc872376940480705aeb628919d8c9912909823ac384f6a072c72c03c12e2aa8462ce83737244f5525cebafbb491a2a75b4ae8006c2c9bb7d20b190987f5f85afd5b4c1fa8a643820590dcc5e9e55749df8e4aaac858fea295be26fe3891762cfc2fa45f823066280d2afad8653b94a813265f9d9107831181cf8839c72aadff85c745af743e0f22a30c28b4cfea2aa1139790d3e7b491b6b092bbb18bf773b06c3077ad3f1261b8f401e56d4c250c0f30e997e6a546f9cd1482b4717534065ffed131a8e4691e28456abc3ceca5849302cb85eb977a1743e9836ba2ab835f622cbfebbafac8a8edd97e5441ea0f84434b9949c4e5a91a7684947c0370d271e9788bd8222d5f53eee7491d20eb46c7321d5858e427b028ad279cb540c1a547fd18adea0e0d011cb7d251857c1ac23fb502f2ae515aa8c90bfa1bd693313100b6ff278212b06efb23fa836fd97331a9a276d3ec5f2256245674d65d043a072dae13c2649ea2f578583caa55b916ee6d65f510a94ac3ab6eca201f34f2074e631715b40478bafc594cde728d8f695287f2afe8af28859d5389034a75f89140eff05615cc41b06cc6879030cb0dc1788e4f34b3007a4081a4a8c8d8d47860699fd029d7d2a17c1ab2678fac43fedde3eacb441df00e61acf90d208591f70c75dd44892edc144795f86de15db7d9ae43dcb088c6eae8259dd224fdce809d6b4e2f13e6fe8e5b6da195ba0287ecabd18d48d1fd4f1e9438e120484df2e1ad9ceaae247b5b4c639413aef383d948dce80446ea125b67627d25f23e9fdf477351ac2d4f741e88dcd5f91550c71e72b84c90a5282f94bd9d1f08e3e240a0a4bb4cf556a52a994a8064a2c77e41d66077dc039957b795fc28239896eb2068ad16e84196b491dd47e16e12009398db1be984aaf6bf62fdb471a456b32c58f77c158461ac844dfb0858cfc81f591ae0105edde98acf7ea1c09599ae0e5c45b62f039e37a48b7ed91282aba6aab1d2c2b039b3f411b2f6897464a8ff2c333717e60a298be2709389cc644c70ce9c1a483a61e13617f0dc1902c3c8d84ca8ff9c0f43d022f448e100732afb8655c726e33ccdc2785d5ffd7ee533a1676ea93cb7f962dfd8ec47a32ef703fd560965b20a2fcd52207db1ef0046e4ddab569776ee7cf45f476772aafd16622b2613ccbcf4213183d5f079e9bee36d86ef709ae54422e38abe7a1db408b7ebfc72f6ca2b5dc19001142773fd827e72318c4fee1af716211d2401b104a2a40a2a3f4f683da6e5c8d827f798a73d2fa189371efaaf6f6e4c1a8460f6e6e51064dfa079adafc7d1f0472d042258395b2aaff31e943078e44a660b979e91e240628a12074a069b7045f20c9c9a9b2823d52d1a71cbd107b5b888170c2766fb012f60024c0aa6c5a7505cb17d925943b25101a0f9d2e78f40cca2d1266e06a85ab32f8f60dcd9caaad0bb5f7129fce17ab4ab9f2f1d9ffa5b9c3662498737d020614e54cffe567fb6d746c9a33065933c59b0f66429eb43013b43306506e0cb158d79d61938f52ec82a373bf7f03995e63b00fe4b109b3d918c7fb3e9d777771a510e1ba97321d2eff470d390776cd39cefcc1cba44bc0d0a5d7ab038a2cf4ae61285df7fd2c863d3ff26640f140d6c05222f1c7def48851a367405776cb72f19049b9f87e6192227bbddbfad8f8aa4822f6dc383b94e54821de59ed22ebca2babfcc7672606b90efc14eff624f338d0b63fb20fe28b3b3b1588788c12e77e20992e82eae0aa6ecf03a627fd66f251b6ca686142ea50223db2cb10936cb8e619b811a21f914b3f8ed1db52da0a40fc63df4623eeba59309ce490860eaf0020e63265a565102e050340f9148144011ab34c8617a8806153c8ae062293937ba31f789c97e937e7226a5e2715a214120e38fdd66c67e19d40471994d2b84d9f0acbfe2c255c671f3d70a5305dd13e7555dabbbb87cc4e62b1b34cfcc5d1b34a664d79a46d6826d4eebdb5d7df86128a3152ec3bedc77f6c1445732468ed7b91123cf314843e939e369b69d0c657f612a9a9c9ff40c396d2a3c05b27a57dd6198428f7fa2638eae170fe584310c11d0b13a15ec4c1b658d5782b20de550b166f2d89835a34a893cce987b8a807e21686ca78493c906285d7915390bbec275bd5535804b46ffc2de6cd313235ab52b8e04e98b4a7539b6298c974254284dcb32875029c8066988f141034fc156a5fa861826e49140cc2222099608bd279e6f7b3b12db95caae852eccbd8ce691e0bb937a6c83f929c3517a0eb2f247b397c828ea7a97be6cc6a357e47fd52df8be5581ba6b606b81f173656c4f7440b54e644ab775befa10887a1b66e1f27b98708e80c7e2bd8791ab006db14f261e8ee3ff42f3b8a3a899d8146d24896f8f6e3e7e104ef85fcf2f9453847774f63650f63cf6d944ebaabb9d7f5b3f1a3175860acf493534325b9b5da74bbc226c5f346aafe11a974d9accccee2df02a81d971f564bed3f7fac752203ad2c1e8cff090f8ead99885ac203351ec4280a1d016ca6c520061d864ed0fcab91033eff1f8c12de4e831bfa957c1e89921b97c5891538b9dffbf93b424e905923ca5f25bd64a17d3726922b9cdbfeed6c80ff9d06a3cfd0e9497a7b961aaf9538852a8e93eefc8ab49f416ee9d1b22d70472fcd0a774543cd8ef286ef9fc586c3661b3c8dd8de3af588f1d91bbc1d3f354b5a05f0689ca8e75f5ec3e1f75988f9058f0c154a4d2a748b2bf6b8705242a739356329878b0251f2683960a6e18f1e9719623bcbaf3176fbc0dda2125f506475c81c8fb1364de92538400a4278083aa7673e9fdd3a13e75ae0ccf78321dcaf637977fea58969252f6485a0c7644c2b072485dc76748ae76e2a229430b3b5a1d3b7785dc560f5914733425a02c6cbf177e85544b6ea8cdeb42f05707519d79d01f18742305d3fd952246abf5732675f000", 0x2000, &(0x7f0000000280)={0x0, 0x0, 0x0, 0x0, &(0x7f00000001c0)={0x10}, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}) fcntl$setstatus(r0, 0x4, 0x2000) syz_fuse_handle_req(r0, &(0x7f0000008380)="1d3fc0588fbd1ee18d3d558a5847e5909b75ddf492b38ddca57fa90102c1981d37139db16dff89af93eba795c940c2869e89d66dacb9e0aed49166803315f8c1e3a428d3394e202f8983f2a7a557b15c11e2ae42e2f07ac634034c2c6d63fe5505d3cc16fb48a8119d815c5d5391518b847b1334f3d717d9ab5a4c85a58da58c7438e79be665e1b196897bdb462a2266798fb036d83bb993d48bfcb2774216931c85a4fece4b93b635c3f1e651560fcd6ce0b182aaf777cfa0bbbcb6e5e9f4d450fcb95559468684612a5bc1582e273fe8bd58088cf411e97f9b671a81d18e865c2d899716fa59c45d7034afa7ce30b800091bd01ca3df0e083e1457885eba6730a6c70601bba70b2323d6b669898290f43afd84c333ad8c4c3960f70d0e47eb8511071b4e2c6ce2b12332632052cb4367a98593bd39bfdf76d228925d3e7208fcd42d701881c3cad1cf204669e4c598c7ae544bdcabac797503bc1896d36bd0be9edb543d5428cb04daadc0b4e54144fe8a86e1e372cd773a00a3e759fee51aa7cdfedb8c2c13ed709add3235e70c1dff10cc5d473f6c1ea92354c8bb991be1c39f4fa739824cefb41621e8a6cc475599ad2a86f2cd5ffc85684346bd6aec793b06141ed44a4eea375dedfff21d720c725562ae759c5f4737c34d8f1183e6254016f5d54a90114ce910b4c214f35721edbab6b9ef69c89fb3f770915511ea31622c453c53f646b205a0c383cadc845ef9769e99dd58f242b24e98d8d74622f4b7a2b42eeec0881b435404805f177865eeb3263ac63038270dc90b418407cbd984de98df8a449ed3466bbcf6c4b140aa4c0fbcfd4d88e1534e17218c87c32fe2d88807e308fb8c3ab6ca8d145f7c6406459b926e07cb30ce4baddbb0824c0378589b3cf3e16c216163e2966d271b8484a47d3baa946cdae77fd61a10472da8efc228e405ab686ff5a29ccbf91f6cf62dc371e23198b34880f200428f4ca5214c2966c426ce9bdffd7ee2c597d80ff570f44f3a07f5eb24fa4483e2938c98a9e64459f04913564df5d1b29f93b934e95fb4f04dce100324e5d7e6c22b042b8773a792b88405831ffd63a5dec2e764df571214aeef33cbc6e66dc157a86dbeb1d55bb3cbf8e063dd536d0e0ff006ff850ab20fab4023ffaa07b6ab6f8651ee9ed593774a3c3520f595984278b30fb4c0cce3a0afb4836952a7115ac345557f1871511415bdb9f593057624cd8a150954241cd60dca17b688d97416c29b23a767e9184db7e19a74aee2f17d11fb024d906a22dd2ffa2da04c97348b74f4ab99248059d1ee542c5837acb69f1c83f50dc66f9e1674c1b157e1e4f95eb462cc8b3db4cb9fc52086c17f4d5a9fc1f7748dea1fd7af47a7989c1219fd22c91e95bd299d3ef22bc73409d9949422b6177a99b6a9f610b737887f75f718257b5b2dd515acff039886505cf2d8fcf9cf69f74b812121d219ab526480a565a6ec9c2dd4de1b5d2632833a81b5fd445bc049c5dfcb242abe6141943fab1417ba9d2174ed25c521a8e5f6d1354c93176b6d847aa9108b8f49313aa6fdc0a88d08d3cec4f9e623f829dc03aac91c5847d5de8d21dade12e7efadf216ac3746530ffda5d038fd0bc7d105fb8b9fd1cb2e789622b39c0d559c3f887e11d29cbbabfdbe9603ce261549babcba3ecc739203f08238a5ec44719015cf3bdc0eac85c3d72ca34725f09ef8a5fa7cbc3d9197ae877314de309182505e0dcdebb78fcafb35504344770642bb13a22914b9fe76fb948ff03a1a42cd1a799dc0330ff0586aae32fe45238978d2db16629ff8751893e41e9ac72303d91de135313999dde4d93e881b0f1998ab87e5f8e7463261fe872b3ec4ab2344d26a982e286e5e7bfa8126ef4de16fc6107e1b077598e1347cc7b74d57565d4cd9b66e76f6faf51b247ada9672af011db71d48ce36bdc6fa234e6ccbba32a450f837a7180fce70b08a199e7e4c4bd3af39c6b3e78d56f300a45463ff04a55542b01b721229fb35a788769dffe8105171a0cde67cbd9f066834fd24b0ce4ac39a0ab5f96e3f24917385ecc635d7b8be5d9585a5d389316f1323a9916241ad9b490c7505701133451705ad712296bc4519aacf073fa7419a9a81470c315390d4e22820eb0dd0c9605132016f883b8a5e9b9b9e08cdca196abba7f78732280b0b93278f469cc7ba81dc6e764746ea2604d8ce78e301bcf2b9e638849a36fca9f9386f5acf8d9084594c5f20504ad382d4c083c5965f633248f20f1c373e6ae69719bd21355290f50ed84da142127b2c6b0a4cdd4ef4c753edce171d49438ebd31223e8a36f3219a3d6c60ca3a08f88f10bfae1e6a2a5391846ef4e6dae8442b17f7d9f727f47bcd0208185ff18474f1ca1b64580069e35e47c9bff3e421799220dc01eafe2122ba5faff63cd0f275c831e7933391fc180840e9bb5acb5357b196d045853398e93569b56732a637327aaba610de7a00fcb10410457e4493d532c99bb6e95786517add55467f06a23521b7e92be2dca54c9c3df2542384a82d27cfd02bb16e44a9d8c5f07f7e232b794dfbaa8bcd89c359054c188bf5ea5c251bb787282d86b0ec738283e16ed5dd7a74b03cf483fdf8a14a82cf47f4b04185edc4a2dbfd6356927322a15dbe4f35848e6f10eb983797f2886a266b31c0ddda9e2f45282d137f2e6031d2a756a56552a756dcaa24821e3a54fc3cf38c08feb31cd4e32a464d9399b10d7eef1bd627cab3f22775f4ff9d8d5d017ed0d0ad49dad13ea4d1d2cff663d9796b43998956d17bafd8fa49b934dee9b583fe62088b251919291e3b4ca1cb89b9cb035ad8179f2b60d096f96dc1efdd350e09ca32abdd88bc5bc283f0a3fb32588c87e37e2da427a469689c65152558e312536a2fd5edf9bcc19f25501cc9de0fc3df1a595b61ec856455d184f77619ebe89911e165d81597081f903e9bf69e1d51c6fc1880186a356157306c2ef2860d04cbeea0286e4f56d85cdf91cdc2029bb5d1b77debcce4886041e3ca2d6ffd2ec999e5f177418f21979f3135ff517364d99db378ab03df76febd0b2fcf72e7476956428ca20e4be0c63779b112a393a05c5d44d6dc8088dc57a9c0a5b0c5e2a41d9a265a400e62ccaf48aa478f929b354f2013e3287546dc8a811fc7964a50a790888ddc1814039eee62313ddbcf1c55154e386b011b36d8c74888669f334ff7adb1dd421d43b6223ac8beeee98ef1e54e6dfb4fa69ca8a321b3c2edd30143fc17806b04f8bfc403a55467be88cf8507d94f245ca59d1ee050f4312169250ac8ca1eab6eb00df7bccaea896a6e2cdfce521a404913df83bca8e699913b4cfaaf62d00b90eeb3e106eb4aafb7bda8d0dc5383d191d54a253982bb3885dd6afff5f0d85560ab129bb4b411af28740534edae48bc106ac43c3aac6528f48e059d8cf0cf870f9dc6bb669f2b43bc1b42f46a28d82c200717be88d4493572535d2663e7500d865bca452bb7540d163823e78302dbea5cdece7e72b84880423a18fdc1a080e0f0bdc7a58b04b8959ff6f67b224fe72ef22fbf6adf4812e550772fcc5949a157371f1def1a020d951c005140cde6c887040cd035dd972fc75b7b469070b61e1a442a78db4c74f482b950ac7aae40b009c2d6736e9dfeef0e9c9d718409063c57b082beb648fe8b41d3ecf3ded5cb24f7c20edb6ec753c4574a594b62edd81d4deb269b9cde7e2cd63d8d6da58736454e383415574b6f88b0c4dc158be230beb2a67fce06e7d8a70c554ebc79c2d40a31b1c19797000a8596a79e8ef11d87bf2922e8805c455a3da4c4ea2c22ef52ece8082708fc1dbed09872afa250f8351778548e576e97e4b3da023455f8db349fcdf8523f52a56c9b1f3a863652b11ce7cc619d6eef1611e97d7f94ad7dd65f54f88cf49d3ea4490fe76411dd3de5799174d1017b9f3017c2c3f8f30bcf28b68d7833b7a8fa46c3c3b346e1e2f55d680d22c7136f9de526427657ee167cdf90c90142ba705465ce94bb1803a1540b36cd8d22d6d9115c002f2ce96bbac79a573ea858cbb8977d9087f1e0063cea8c86a9671405c4fea89012b241d94a31b15ad36cf388ce3ebe924019aa3ed069bd07a24a46f7f818fda0d6463893621d6531541a57449eaf57dc09c9767a598444e07f79e2beb85362ea93ef04d37e5c4438c8093c026b3c042bf3cfdf11e5db84c05d7cd6bb090ee7686d87551a807fa47c07a84e9fb490f0531d38b86c344ae8b48aff790bedf407b71cc49440bb2300f9d9f73726daa89c7b3ade0b84323a6da6e7639652b004ddd08dcc03a7064866bda6b17ce8c003737a4c3416551a6fb779c414d4fdfcd3b29bd0daeb69c965f8395269019691e1552da684b06febd81d5f71b9bf095ffc581e6333b10f7fc4a3f365c0bce141b95a6fe580a4183713103cae76c776bbd29a8b26a3f2314609d1540eae73e43ba296d7576e2d8769bae7cf7518966b631bb3b215fa6a56b97ea96e116421ba669617ecae72e3aa186b23a289059c16fae6aee21ddcb669592e5068d84287be2d80a72642de4950366b346285b42fd89f49ba3002315c4cb76c12ca0f96b0eb13547e701831646ba663b0622eae281da69c699860728775e6f71ef3e63cc010a2eefe8d4dc3622232d8abc022fbdfb7821f02da20ffc938a7228d5a8eef8a9e4fcdc2ae68ff7ba6f8ff7e7e36fa40d35658e727554f696c4df6a45647bd661450a2404dba0b6021bc7a82df05b4076f86a7f33faa26195eedc2377158fdae5c4704456805c8458f4d643e356736c2378172d11c33dd73b0e760ca9eb5e12d707001955d3e6c85d427a472de77d6c1e28220c8d84eae5c4403484bb0d1b7d207c0c9ea476d2efd0babc5b577fb333bfbccc396471997de9d71b3c2624be1d155ad787635d4fee3f253e5b5f9cfec484cbdd510bad883b79381e8c608ce793cfe175ddcfb49ac6f2cb67474b415568ea90411f455b651c5c6890c94047d86f2c6ccfd787361d6ede1fa2ad89e6dc9fa796405d8927c5197e17e771173ca5ffe4af4864bf6a9ff10ae142ce2ebd664ab94ad37352f36be1afb259c7b8627849af46447ac05600ebc9eb636aa2e56c0c8540857595c114e4c1c45bd735bd73ddbe21823232e1db6ab4b985a681ed4ef505e6025d4d234086f4bd8b422e4e7e31e823bf5ec1d514a328e1f9ed98eb289de2a44229c66382ad64e3a1fddc548786c52c4d74e6e5dfe1e471c20a8bd6a90c1320318e74e7a1f3d7dd04eb81b37b8157db526327bc7bdaf16b181ef71d813588c2747039cd9c62f2afb253ac3a743d083ee53ad6828060b214e69b73b2064e5a01aca0ff1f5b30329ab5fe285193711f4401bfda2c89afbde31adaf1e0a1a9dedac7ae09650183f460f4a93b0e1f48728fa0c2b1b70c5a2ce4cb3d99627f9389d94aeb64e27054cc71b26f7f281874fbfe82ba74e609a2ac05ed5ffaa344fa14091cddf0c77e883a295d529916a16d06b4207e4a72074707ff4f17e9657b6f55d021bfd432de6ee526d26b4f70e5f8da02c23d43cd2b0ae674a573258df27b775db221d416cbab68084c3f5214b199e2fcd84705772984c92c8bcffe37950e8f3fab716f994765d0b09549201bb19ed09364880ed17bfaf8be10e842051f9f096ef864266593b6d97767b20a5530683c88dbda542095e9b57ce6e04b19a682652a4b72cfb17844a0f6a9a1a89f3f26ba56a05117d20f3bfaeee61d7deb85532ddb7d662163aa6386c91f40ffa00db6f4a6523b0b494330a932bc544629c294044fd0ac6049f285923b613bba81064f84ffa71a900fa9732023c8fdb0c480f3154d0dd815e9f2661b3ccf3da7c3127156e3e094041e365c97dcc6e74965a659034701b9961f9b755eff6066448f65601e9e44e12a7423d94027e4f118b5cb9f33bd762520afaecacd404c6dd59dd791c1bbc87277d5028596cb62ff14be1146ea78626e182a5beb492503b18d620543301161de533af3fc1f666727366f10c784e2f0a1bb5f5860b873f03f26b03707c2b8cdca494b08cc98c365009d22f3231c7eb2a24dd6cdfacd577ac334c2a07bbea2af22689fa35cc663013588419b5256fbd52538c9c5e708ffda77c0e97ced2e703ea5229d4eabdeaee8165e80d5867969269c0897bc45d06b96589eba66dad2f98aa72ee0aaa4aa88d6e4fdb0df504131909629eb4fec1de621e14f5445903716fce8049f89a0493607b11e596ce14c2e81ea0905922abd9c8601f558be28d8a409c360a279b86a2a3d09d8c422ef396979b9c3aac8e05b02975419213ac78dc677eb0b3a524ac0baa037012a97fbaade89b939f66d3cbee41e0c05c62b27fb0ae6bce02f7163da983ced2708c16b2351c1460131a9e922f1c1b6981c67faca4710346ed65a4ee56de725bd193bae5574ea91e104f660c4d502b7155eccd61fe4c5b819676b8727492768fad9d13fab5a240ebbb005741d5bbc215139e07be5bb73e3f6b4c4be9519e81c7cd088864c16e4650ac64418133650e26b9ef9020f55438acc9e7161b2c74bd172354ccc051e6c4a6897354bab543a7f742ce799a6e182b86839173acb03f39fdcd4a7637bb48d2e4baf031079687707612c006197ae598d335c463b6d79e0cc3bb7ecc278b9407a0d53381bf3cb65e78adf03a7dee07409b97d2df91413f04828aa2440049b9e8dc4fd907d879fe8480a239beedf8b729dd76042f50985db6761ac1f2e7f0cc48ccc7ba4d0634b0e816c8c68eff96832fbba350afa1107f2da7c53bb9ba8407c30e41da1278f31cbbcc394aafd6a1df76276e39a8d3c27c417753695a74e7252ddd27542b4bc2b0ab4cb001d01411d288749bfbc24ea8472e2906201655ee65d3f435f158d3295590eccb3e84b3f09e12db00382dceb8846fe155eb20580c20781619a894ec92d9a80a422a10b7ea440c4ea0bf3fbbebc89b2c11f7f3e858c16cb823e10203a957bc48959b1d5e3aa69afbb8a5ad1bf617ed59836a289dace4a5224ef9226a6f3d27f869292bfbbf3607f5aa807d294caa053a85a2f54d97f76adf509593bdf46054fac6e4a6b66f173a31d5eade9a38f5106a16704e80d61658ba3799b00919f87c0b02fc4f7c288c0252f46240efa9044d7458f6b92497321f696831565fca86c1c0bb72b4952102b777b466861d22f78dce75b8055dbe3d73168d41059715a23c9ed906e80b2353f32fd43e92d5ce90821bd9c6b4063125339b8f3a8df16ac4b1b0ef85cdbbc6f2acc15ad9e0aeb19bb0617f8623dc029abc232a67447b1ee4f6c4ce234c1ea467a20e8cd21a097f096855a75525c55a2b30c74ff8011476addeafcb18b64ea09600d7056fca53a12a1f89501d00dfcc81f74760fa26e081043ea648148b1ef1e4906e0a65154fde2c554b4c36e97de184dc9169ff3a326cf4a14708fe3c6466c37eed71c44143fd2d5e22443d1b61fe42fcf52207f17422a96b222a1c8ac8656fe98d7f9b5088a725bb3889ce24da112f2cd88575217ca6087cfa659374a82cd7cdb63b47c3979fcf094b62ff72fd4f0adf0750bb3e001ca7772f0733a5fd15e81aea1abd929df4cb195760cceed8d76b20bae92244c685b6a74be268c64a8960e1d6ec3edb9e70986b77eba84051c28900ee9b6c52d4cb6d67eaac2f5cc5bb79c12a5cd23a06f8605b492e28983443d245c963b81ddcba2a561957786a3698e2a0ccc21146a95ca4d7e4cfe16da4b4738a36c95d42f4a83217ebc7d5d1f17ddf5cf87f8ec8de65f0e69491686c973e69faaa179e52a828863797755deed4c1eed27d51a8ba25fb0821b33ffce69425d27ca2ce73c7eb9bb976f3be629c5608993eb49acf22e78c1002ef8d53ba36ad0b913887a105c0c5cf1d2561b5c9e3101925d758039f6d27ab42029d5ae10ca096b71e4cce05b7f8f3cad02f08b6e2148a3cb5f12f5577f52d118ea055b47b136da35283cbc6ab9570d61b54af491665d9bd141c2a11eecad22b00429b8c5d7ca9c94907429da625315826e99f3e61537a00b554228975cb593bdca2b28c1b022e8f4e6b61694fa934fe35501633bb8736021a08f58deb6d3d462fe00b7e9b5ccb7e2f065003b16d0e54c66a9c9d33966135e410aa0bf48f59949771ebb1d38b3902865fc309e7c25bb5b4b7de8611ffe178877c31a8d1b191dbdeed9a2348fff1b6217553bd30d3d9b7eccbf64b872b26aa811199c76915ba43c610bf4169d8ffe09eafc1b0a4eccbb64a031872ab1b3e7a9b9d9cf1e3ed1a1b6a5b4a32ab67edab8fd693360c62c9f34b00dabe47cf1e8428e28d1202e556160f0d4b6ab524107f5ebce2a4782061503cab2a1e1aebfdfa22edd4536dd051a860e9788a5a4691b243893ea6b8f647cd9094b643b9354a600591cbda3d762e7dba265b9c8e6c338151709322a51d4389431047afa1031d18aa0bfeff5d1bc28c5e013eef0a26a7f1eb3c4dbb12a215882897a65608fc3da16a6de1ee7349d9853f6faaed5fbd974fd051627ed762f74341c6ceb06d4d4d635f599aca02471ea5e3dd5012cae344abdc3f990e62fc07aa325757d1bb2ba0bd7833bbfd1ad4aabe86cd389afffab65c73df538d6f9b2da50b9ce1b1be4835f85f2d77a01594d35f48b370b0b11516e8913aef45196a24b290c7491ef39a3a6afd3790b93214837c3247e76ee41a4bc1539caa78adbc5b49d471a9a1724e62c5192ddfca31882350dd906560cb257c3582c4f294193dee760a15b35c9b746c690a4728acce6339496aeb75c2e350ec68acd49683d23140feadc2dc3eb118a8e87281c60a18d22fd12998c4c3c30fa76f9c76d1a994cef1dde10e4b5554e4e4bb0d164e3b85e5ce16cac42403d3b2c687a9ac0b8813a5a2ff6fdfae0c41d9bd4da4f2dad84a309ed3e6f353e9b29cdc9bcfc0c2ea73364554f5f9100b9a01e55fb3d1cd857c9f42378a3ed6f32d87a9cfc4c8366d6a28297128226b6c31612f9b6c1deb481dc930c417f64eb53cf74abc5723375e6370498817273981af928e9d64c2e2c1f7aa46039f2bea921ee5505cdf50f5c18d0bcb6f4729936e9a0ac4cdd2ed63138e68ff225a93b21279722f0174dbdd83b7fc3f6e54f602107c099f18d31fb5d682345858d154475ec38820fb3f9e7d340e9757854944aabd9202d4154b3ae6996828474f0cf82d9162c29706a455253e2b7a236b7c54b7deaec10ac95d71c93f7ae57751c75a98a59be69628454cbc0632ccb25faa8108de381e12cb18758648ff42225d26cb7c3c78745b0fbd371480f58dbae1e32da2f5edd0b487a6cdc0200536c3a45533e91b3241f2d19b008de02891276acf3194deef6b28133da6b7aab644ae69e0d310cb29c9b100eccf9cc2aa140d718ae5a7bb03895ba915f2ed39a681152c6567390465f33d6addfed145bdff55795af7fda6bebea3c98f9b4d0f9538c9513d80c39369506638ac267bd2afbb0d0abe3c44715bae6a8f2fec7bf3178a5c8821c5a6b32692f13153c364ce41a6e6e9201b733bf8fef31d33d058af4891138acd31b38ed8dec427b1f5b29455c4721bc1b69a9fe0c588b134831f57c64fca00fce1b582042bf68c8d4f05e27c685c81677ab6331a084fa16f6df88a6a6c161d4a2043ec2e2586bfa0aff858793f41cf2003092e55205ccd9084422d53245ee37aa8f16604944051fd787754eef613a5b2a0893e0016fd00e7ea3b13c6f6a7f22ef4346790b5f2d2c0482eca4f59441d488edf51a5e71655f2c6a7e6f348e8f364ddce5a57e0252a6ad7dc6170ecd50b267673d3054b53f03bab834de4ff37dfb731ea2a2d678e6791c508b838bfa9f274a8ecf5f499ebd356976e989cdf7f25010cf28169a56ac2b2664bde64611273af5b475546b43056f436845c7987a986150bae9121485ad36d2991e5bb14015bb360a04d989dab9615140841fc55e6cdaf73c914120fc6fd8c1106d75305bd1ff6fff2318ba444caab42268716d5c12dd5afd97abc3a048f3feda20622c1f16061f4ded6ee023bd1fa87496081c08f4dc84d946cf0ed270122b6c36da77690db383187a0270e5e9dc2c7b7f13a6548dbff4a462424973e424ca4f16ee07956527336d26d86a3810b4747912d0d72b66ae8c5cb58c500f6d48c07479d74ad29cb2107d3bc2a0c67ccf82af7e19734902b3f1092a515f71deff0c98babdf0c6a06104c0fd996567bcb0d4970bffce62889c6847316bea599d7a2f35a19adaa500a0aa8c8f50bc44f80b4a0a0f2607a8e78dbe95fac49831e0d54c57b415bce00047d12b16c50c511e96ebb39271d85653edc76f3099effd558bd90e7b8fd0a5fa50af4e424c37c9ef5e907051e61b08ddfe49cb318c37dd5978d0f11672efdbee14949ebd178af583860979deb98354bbe911582b6b4b22aedc7ad1b9e25f4dc500362ec7531789e5b84420d8abc72778dbdedb38ccc1e9aebedc8aa345a96e6af55b57e612d7438aeb0442f5bdaf696a072b72300930c6321bb3f9f0a6d4e42d66df2f3207822cd8758cf349ac1d291a474136dd7506a5d65446f7fe6d8abd942ccc84e93bb12f705d92cdc51a287ff98fb45b4a08f89283b133c14bf1840037118a5d518fdd4fa8c9e49d94d61959db5e8d90220d531efba57910110de3585b4ee4ebd64f89c745ab9d713604092aeb735683dded3de2da3af777371e6c678dae6c86ce8a28ad22cf02c2884987c2f61b2fc764eca2e3f515c35e6697f74243d3a2cf2f9cdf3d3c9cd116b8aeed884d3ecf7da0c1ad282c561f17d59ff9991ff1e31631b5360493f01cfee17f40cc18cc4cc77ff85f8762b6c8b19618f7a916d8caf1e3f3010e8452e1350c0091cc4bc5e2e303a9c3103789c534b511dcc56f895508d1103cede5da804a021cbfc9b0a23025ee40d9f23f03e1c3cdc1152adc9d5fbb394e6ae07202cfc61ba4b2186d88d13ed722afa5543aaca9bbccbf8d972cfceb33a4410947082a56a2132cfabec36e3fe9b18f3a88793e5e64dfa8b61bebcbb952d2c3dfde8e54f7399446e61c4c481f4d25c168b65234483f36daa99bf034542d3354ea93bed1f3770570f503e5e59de2a8d3c61751f4a45d52ee887390a7bf2821219aef4f1fc2746e30decff269ad83b7dec01278f4952c759efdd02e59e642ad22cbcf1819a199ade65d76d75123b011a29b807cfe988eb2153b1cb81a9f13a7b23ee5f3372a97b111d59760a3fc8e2bd06a775553f7b7ebec7fd0e054a00a9eaf46a6310393ee387698ae80d180742c42ebba50ac3a3c615a84d9f6d1077905dacfaa7324ba6f94e88df6ab6898780b2809af5e8d630bc5132d1dc8e0b741ae663a90588d92676b261994c2af2cf4747a8314fb022b0d76f74a518de290376bde67b0156c880a8208b2fd5d22992e6978aa2425865354c441eb12d8c1214afe5531b64920096257a6c439504b8e6d15c5e8abd7701df50b15b8068e43472dcff88c800bef997a76bcb9e6f120d9bc7b302d40685f30c067c68c2db4ee3ffd1d7f146baffa2a9935a07a6136a237d3808ffd06c69f40cff61573fbe36e2fade8bed56a833f86d", 0x2000, &(0x7f00000008c0)={0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, &(0x7f0000000340)={0x18}, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}) r2 = openat(0xffffffffffffff9c, &(0x7f0000000040)='./file0\x00', 0x185d42, 0x0) write$FUSE_STATFS(r2, &(0x7f0000000200)={0x60}, 0x60) syz_fuse_handle_req(r0, &(0x7f000000e3c0)="7219fa4736347448f0d1f962fdeaaa2f4e9565d9ba0765be302453af50403a86eb40b21bcbd77bf4c283a6bcd479ac2c234ae7a215c9e5764af76829b9c3d50f5f5c7b6c2390df2b003da1a236837357a9774f3870ba1f0d15b06453e65ec7356f9d694fd1d082bb765691c94cd946601128d3e84bdfac4e7a29261a1b028e5428bd784a1bf2d319d4369331b66b6ac77f295881bc717a69897708f4d9eaf8b02a6679b81fe53503714d30e10dead1b02c2c73af47ecbcc2d8afa86b152e059f632bd6f7d86f180d7775dd3dbb3928733b20d0b8e568ee0ccf0c7c94006592817140a80384112ef5a2555dff2ae77173df629e420104000076ef2353c02511a910e05b3dfeee214754b2c0a169bf94a78a503e89ee164571056973c56a9c95d4e934506292254d0402d978279d96bf35fa53a6345cf7ac3914a0d1c3f06b1cb9f0427d0c2d42ee4a81833489843975ff4d2e9d44dbfbd6082589d0baf183123cc821b981bf5ce4576655094e5c4ecfacd9608194fea94bf0da31e3610509c215a4cd490ddad06c0bb5c9a1779eda18b6ed5b9c761931ebb4f220776bfa7ba359650c38a6628dcfded61c8267d1590c8a6726a4039a2e7b83a1380197ab04e49f11ac215c4458fc92ae773ce33a3f058da0366e4ab24d2d9cba0fcea8a29491cdb25ef21efe9dc233323b07576e630ab3abb58c1570598d1c7739680247f855b8d4ec1a3997e6b2a04bc9a65c1c11fb7594504d503d4f1a79a6fc5b15c76f54681cb8acb1efe7bdd30470f2fdc95e1fb758267644d2831f51792bfd2cda17008a94cb1dcf7eb84297ce9b8bade982234b12be0b01523078483817ad574333a0e8184876d3794f44c7da1eeccea59bb261d12efa7389251b147cba04598f97d4baec8b7b4c6b799e0d7481eeb7dbb235e65f8b6f5ed6bf46b6021df25b3b73e9771269c7bf06f95debf193c2adee6ed34dd1b545a861819ae58e3b7069c6988f7c28d17676d41ceaf1d932024e70f264f5c7e5956c3bf0a677bcd59158e5c9942d4a1981893c866602d24d4185130c5b11f70be0ae8f79074baa3a2fe0426614351a256dacfaa55cfe6aa71a76ed18a882e5479c622653a98a50f435bb8b22b05ea16a4726c0555d92ef843a174fefe39088ec71911adef38ddf8005f3635bdf91f7002afa560179c1a7d62b28144c8bdfed330d3efc79ddb887f1ee4bd3fa2c342b6dfc0af07377cdfbf9b91616d8da2b3857d165e9bec14a304ee4566a3b709b9621918d99d6291deef4e1a1f04ecdcf0d92c0d84417b2b2ae4545de22f76c2528dd979ca1c40ac83a37a77794b07337a6b0aea2bbdd028275c24db33001aa9c6e8a37040546d9013a9889cdb8950169dcaa657420200dc523bd940757330709c210f26f3ca8fc5c405d4d3033fd7f8188e6909abb283b582349b83b01b766c11d2fb1433c5f57dd682da1013a4ff17c5cbf2907db7629fd376b3ec67bd1b7ba2f06a3e0bb23e658018dd76ffa90af51940fb5fa73edf117a2bd2ddcabe0bd96ef7a0b702fdc1125c9e6d873566e0f8b4684159a54e41df0fb0fd972216a045fcc086da525ae1929812d4e0b5dce70c08479be39590aed1ec9560e80856a40f7e4e408c14ca791c5bb234cadb58af2c8c20d666311b828a349ec21bcb9f1d9629b2a623e9086af804e3af32f6046437ee434dee9cd1a0d42e0e78eebab35988b7f1c8327f200a5dca16290f34fe3637bca69fec029205a55bb3ff218648c4f31f558f7d1eebe2d8146117470ba8d1a6794326fc92e835eff7a33b988a41c7492eb4fa6969419142dece6f7a7a9d404387762d813c4d744e619d896689ac9cb194dd235fe24c567033039b9afb9dfc77f9fc473dfd0629aa22d92e5bc388ebdfa6b1599f281daf0c464e34340e907f2b4a1cf289ae93628bc60f9c71ada6aa32ab1b4301040b1e387971686c68bc9eceaa6686b93f8ce396a1db7e8d92d0e2c122bcc9f7e8eb79cdca3036d5d6f69fac8e45576229f40357146c016af09951ce9c9ec08bd658a7ad0797414360844d0c795a9695fb76e3e36723d85c6298c7b6eebe03ecf5d44e7083b99fda4c38660d0e250816de5b44ad52b85b9fb2ec07ef99d5cf69797533e494a9de1e266315c5dc4b5303be9a171dcc78bf0976726b342442bcf118e384c993621ab4d3817541a4299f26274969b8aef3a9a27a9537073c2af67dd599ed87e7ea2a54efdde32a8c4b247561e318a8bc0c54111e3c1e88a909133b087cdbedb007bc318bab81046e1fbb0551bbc33130e1d1e44f74fc90fe3531265f9411490e902fa016acce6ffe9dabb0b866aaf1af3d6dd019843831bf04a4826b6df273af7f527e36adc5fc122e0c6136c80ce3e9ad0e0183e2dffe942efc5a6feb166fe581e346c1e1921626ede875ca2827b76e053e735a00da39dcf034e8f0ed197c064c048e3949a4dffe8aa1998d94b63b15e491a830f037d45b5eb11ce15777906f877336e852088400604bf084fc0f688356b5a9ad44094f88827f3c1c29821bf16baba51deaaa4977622159c2b9b7a2d80c50d5682d1a2d337c6c0e56219733dec802de90b0ccf3bddc07090feb4f394be70bb0adb4d102700bb8436144cb3d09c3535fb9efd287dbcff5b6233e6cc380eb90367352e4afc968892456f30e91ff906c4c818fc874072bb66d73c3d272e69806a94cb35e634d21fd8dfd0ee6de054ad8696e15fc222e064291988518155cdddb25f7228d7cbd6bcd347ed5c453221de10c92030e1a1b96b8aafdd266dc6f71f390ed7c143d2169feec70d850a138c661972ff8df74a053b96475e473bb4784d9a75f1c1ac78cc8728a84f762806b4cca78aec0acc629a2c0db10e4ae8c0c60e273c04a10a522d0fc12592ca9070fd4aa263dea5072aa1f286aa2f00cf94fc9b81e4de59199077b5f272e113a3b6c77e6ad0dce3a28524b934a699adef9ec2a67b5baa89056d97d35807e43dfd3e329f53223c38abd5dc31f66dd785287a5c8dcd9d2151406ca88c10e99a807f035ab9063c7e8a488c9588ea07db0bbad959932e6d1c89704af0d999c07615bca6d10fcf6873fddeaae71975f6115b792ea595be6a57c9ea52b41314b1e6472c82d091f66c18836eb8c68711ef042070545040220819e940c5f4ccd083f0f2b757c8f221a3dbbec12cacd2aa7531bda0fde96967b1b683a9e8944d624d26858233aa9f3104515182ce59929b94291eb5c2d695e4e6b7ecf30e5160d30c62744940defa7b455625047830b46b64a70e4070c3e47f42708242d62df081947cc7c13454447f167f2b59013a914eccbd44c40200e10279d45a2858703587491d13b3e816f515017b33ca0c7157dca8c8dac532aa8d392762d03034fccff3b906f8453e3517deab48c6e8b78fbd283c8515ad00c96810890d205d8052566d4d204f48a759877d3979ebc54d0b606a98746aa97a178c19abb68325de656b508a42c42c1664db915c687f47a75210764898b2803a3bd3f82c9a6280044059cc801fee406a5a14093b05a12ab3815ba40cc1182020d83386ecd8c1f2944b85b27b639f9df5aa7000481178a5894cbe66ea9ea8da50115cffa32c281c598b2dda88f16f51d7a1e75e0417988ead7adc10b033d03a41601709530799f81b171f7b79eab121ccd7dd577fd068cc4712c437dfdcb77b3981efb970d72ca32589633a9e42e54a79cea76bef83a0bcc3847ee6959405d37af73d3219a28685f71b337c6f72584bc37c4cf018cc69fad226827a22b9d58d41dab6fcbc056257606d8130094f29cc747f3338ec6cb0a6813986fc07fa10ee0b4dd4e228c27f585c2163674fd671a8dc1a6aaf56e3615802105cd827106b3e88a33179b3ada9ecef3362f910c818b6dbf4420f76b6e3ef168d2a60a88cdac79afd888125c475eb1a8d1b1b1a217ebff12fa89bf9eab76bdaaec17bc3d7dccd428a68db5812fbcb5a9d606f4c32ca2aaae107c817279be1e3e09c1cdea961c3a117c3f077ee575e82794a5f01a3ea28033381bae411c9c6a4edc294ad368bae0b363e8f0d027950619474115e655feb26d8b2f30bc159fbfcb824f863bcf7a8210eb38e22db77af0e24588a490add45b2747383883fa7feb5ab8797247db2c90fa8fc8e609b0e4028c2a817f6e97b09e18559cd7be75e6492f2bb4dee4e132ccc5681ad0d46950816b7c0d0191aaef8040062d55e5b8d8ccab4fd0c2f2a9ba3526953921126149554d10315de2055a974a081ddc27996607bad5b9e7f2676187f4304cb1d971363416cfb7881f8d48121217bc1fb118ac2f77af8b39084cbf8d67e4953527d1096d145fe4bbe8703f2321e1bc543d859a21d6a13a808ffb305657dd9336279a79f213dad1d3bcce9cc1eb520fef519180bdfde1e57211ac30a0036b96e93a6045d122aa03ef74cd480597c3787a086a8039d1ffa5fb0073faffc82d7561f34deb2862992ade9d30dce49086db8a5bb6a2529ea3408bd19441fa5c97ec68a2237c316d4270181d59e7fa0ec007b5fc9685552ecfa88f4ae65b48bd13fc9a4a78a84eef52c5a90d4988cfa74c17031ae03588d949d56641fed28f042337c78e4e084a8fd316c7e88755f209e596c5e7b21e7bcd74c26cfb4ad96832b9c3de224d1f7cdfdde65eea9f2ea98b27cf138cd3d959cc869027291e6dfcff604a3847b69e6e35be24789012da813402e9f37b3d512a62d1e255c29c68b956398ce73ecc449d58064247120b58efaa78d50e94568bd2d4c9d56a9159483caa63746c36b0432abfafa38799fd9b53aa9d2b3584b11de0bd3a56315d41a160ac1578f999c5102a0fe8f47917a200091034aef7eba15c293234671564b96aee60df9e5a6fd19ed9f744a36aca8414852278463d753e8dcb1d968d4380c84aab6df7b0d7ed819c9eac6fe59ed53998c8d3dc44a8bfda2873c13ee9016877db99bae02e44ca95d117de51fe66042659f9d63c5bcbb20e3962f2f9555e9315284071c2dba086dbb49a964ef43104abe8f1bdcf81825418963ea894accb301d5be4019608938cdd6544c5d99821c218aebe031cb62ff1107349be067127125a57f1267d33fc64c492ae4aa43fd45b1d33b2b17415a48094d40f7311fe44be73834d1ff73aae7fda9aa2a29c41f4e7e97b5a4456833574d2dfcad90ae8abd4598af3483fc243068e1e2240a1f64eb18c64c3526869a68f33f6f6db3a79746448097686a37ad68265a36ff4141813e4017b564070ceefebf08f9cbbdcc6b506fb3427e0c951809dcb1fa06511760210c8ddd26ee661c9426dbb7e9e526ae602c03960e6594e47e6ab029b1cfc0d7642456c7c20867a8a0b6ce87fbb1eedd00a5610b691b2a4fdef3e3f96b5631172b88b1f37107988c8370c30e36a4ece3f176ff49605aa69cbfb0c6775817e3daa04c8ed033028a91373b2663e9eab3fda20a497b2d14ad4447e095b032cd4de59ae784c51e6cd332bbe833050230d012b1f2475666c854247f19011b3dd5970d8d3dd1d1e74ef0ab7825934573932b37b1345d66aba8e9edaec13411578fd7388ceaeeabf0622334d7067b8710422f7b8eb2a45cb0cdf5f9872d3d14efd2d818b8fcd37b3ff5bb21f2d1e388839d97ea97d2c3e15c9b4dd05a03f2a1f4c6f6450b2925edeb50c0ee631bbbbdceacb52c343b23989f7d7e00b8e6297cb5792cb7299117949a5854129f932c444cf7401723fad23dd4bced0da5baa36dfc45e89a8541eeb432ee7f01a3c6cf94d2d42b6924b03267d2ed1516659d3aadd534fdda378b028d8724a5329a6237038b46a7fa621d052a7e35e7d63b954ca34908d1144007aae6def3d069652a76c5e0c8233617ed6c8be24c26db9f7732dc6af173e05d6f8163335ee07966087ceba488a24a0f62fc12ea47d728794e79e0a20c1648583b203e98770be9feb6f5d0f2bea1495e326a0012c3a2ea8021315f31533f752c61edd073f1283e03d46d34460eb623fff130a57ab2a0a21f9c7c0eb147bce5692f886827c4cea51d87ff9f31a250b38ba4d95a71e874f05744fddfc7ed11a045fb8858be2618e6f4f75696305c1173fca9297fffd105bd38faca2c858d797e573baf3645e0abeccdaeb36f2bc8b1380a38846cc0c80789de54c1d6e6ea344c75b18e58563909a93c41542493fbe25d063a2110f21b08239c4b8be9d24b1e0b1eb9e5c832e5de878d091c475537e6d1baa11214020842ae5c4824e11c11df4ebec8e0dd937ad9aa4c6285688157d465575db9e2bedafba02a2c80d502886343969e322f1575d90f64a0b163ca560ab853a1b64d5246bc53c99466289d3fa43c31e2f8886ce6f55dd2b327338f0266f16774b85498c815a75805efab0add1c4361d1c217f36b5e18c8b2e1efa2dd7f6d1ac695331111b17d665299572f09dbdd9e7950cabc951c4cf7d2cc0e22f6699f53e9573826b420a013310c45690874c96fd0256875baf3f88f1c824eca1c7811501b1d0bd292b105efbf4fa735210ebc62302670bd80b66aa499118f839b17698898492dd6d439c29066bd0a9ebfb30bef1ecebc69472ea8b7c98fd8e012634206f1f6b98420f383413177188d3ed26c13a8564502820ae6752cddf7b6477a04fef130b3caa8913e4787105a9c7e310bf059ea4006630c9603612f0b1caa83c5609cc8b165fc4b14a4b044fa6b9b6b4ac0fe88954022af217e3f5a46f0c075bb2a9d6edad593c295d40490912403e3c461e9d8ecb379427bb0d4f09433ac282ba55ee4ac5fcb94d866429284fcb826d7a93a052eab1dfab0345b238b15d053390f0879638e5f7f9d6e2831fe62626b950141b9cb2a4ef32475816653541f2b74baa0759f1b155d12940b2a34958702e140d98445d0a038cf8cef5f814a86d599613c8a975832710eafa278d97c943c5c6410f00854eeba2ebae6fded67af33b0b5189dcd8d6e0567a282f614655a90bb7eb6283c9a2f0dc132f5a0a2e13e76dca49815170d090be93b3603c3e1ea94efb58d4986ecd452ce7f9caba3567fdc38451269dd5c0f87a9e18f4b01573bb6a27f4665fb964384d91ec1f89a32526d26ecd2128a9e83d10c6aa2217658cf0f34840a7b0255ae3d0ff85a6c11e9f9683a211acb96c6ae196ca830aaf21d97efbec9d88ef92139daf87818a55ddb07717a79608857746770c3449a83c0caba0d841c0791e64a84bd5150955bc101c853d30ab995529340f54b29652d703071628d457db8690b792e25c476fbcd1215f51ca8d60c9556821e9e2125468e8b25637412b206472d757f69e07cb19acfe5338f46bb4917bd748ece5fc62c66f5db79a380da8112888167948325d0c031dd6be1d79bc2facf4b34fc80829dd5c4effbd90ccb08d397c474b0824cc5865ef9531c88ffba1f5a2696e2343da74963098acc5614ced2248bb83f7371672b14bb7ebd9376ffe91c8ac7c50a95da85d804be81cf4218150ca96a4739489ad7bed2d40e26b5bd45aae6ed859608b509901a0559930c5bd2fad3451dced73cc79da05d505b9189f3f66d4d7fa8bc1311f84751317802f6c97a2489ee029fe17481407638228ae266790d199256e12780c5e48db4bde2a548cbd6bba52019f9611c589c08eb2a2a17349f51956757fbf78539ed9e57ad04b8b2513352fa44b15c5fde5e737d8c1594a6ac12ed91127a13fc3b7b35d000877365b098034fc519818521503443f67a9c28e593fc9fae59664833beacba5be1939b071ac1ebdf03e75b99885d159763600509d22453fb26421b9a56b72c79080e0e155450c9312a0ef996b940e5f3e25c4129f25ac16a86cc86a476fc74bcb29a19294bfabbaa38bbc44ee16219e559251f1892a57d3c0b7cc252c28a9b703baa19fcb46d2241ac0c886d524a6bfde9b8e2827c26ac19d994035342dc96c08d20377a476c41a1564663666d3e048b8c954d4c30f391241539439074fa429d8c3715b71c11ecc2f210792e1fafcf89796cf7e54264d6cb0c17f80c1766e079234c500e97c9ad0db4d6fef7b366ffdf057920231478ed7e057b166c627a7a0e725f1864fd6382edd47cdc500f86ee66531ab35afbc1687c354af2e8ae95b1fb5f8516560a58729b7b6c7b3d506682c7f03716b9a53ce7326d8e0dbf0d9b0f1bde90d68472b3a10495f5284f2a9c737590c6839ce3b417f59720ea733a3a1b66066adda9be767f922bb7a9f1864d9836b681e54e25cc7c5880fcabc027ee2e21b8f1ea94c915f243c36a75156f4a89569096d0b0dfe9aac98b1015123aa95f39d00e439ac1f0971345ed4f8110d65296aaa9aaff4051011c272e4a21e73d801ca0993eb893693c2bfbd40c189f9baf00e3371e023cb21aa2cb832b7e87b2bb2b5c733f3c02103c1392a9b7555c73f86a6c19b99e8e4086c11ead1d50292c69f6a97f9da9111717cff287bb8ca585055d75ec6c32f65444a96e99606905cc6894af1ff06f001bdb62dd52a38ef199bfdb12932567eb72b06d9301a568dca814877fa388490c9f81988ecd6d6b338a2724b0853ce87104c61c179231a484fb9dfae9f5761ba0337930761d413aa87d3096032e4f71a55e25d9f873eb689d40a879ca5188001011ac803fdc95331d3d859182bdfbbcb81c101886de05cbcd9cc392659eac2500a81ad4d785a7cf531f9d428f123836f5835a1edfcb92c67e84920530c4d2f6f9fbfc39d8eb7d2c840122da42bfb2d15d11a647a7bd27cea23a0bebaafd34d36f5ef4c7ae53f17dc9f2b0a5e33ef5bb63ae2a15a795fcfa31f333858aa494010acfe2dc0781138b8e2db7f58bf7cbce9da33b2c0836183087e72292948ba38943e31637bae8c77f18d455e100a70433d3d7e7e779d65fbbf5d112e32863a2bd31997f644491f858cfdb881900a0c69dc1f91e8714a43ad0e6ad999a84c8e93a4bf3f29a98f4e3402a7262f0159c5072dd09b0af7b6806f0d05a788f1c19855aca18f9a14674b03ccf200799b1e00b2e3cf7431a0f4c9ca3ce2d58642258416e705920a60eae2d306841125358e83b8fd9179eb2f4c1f8e10a6f86a3ac73bbf7ac751685d689bd181316bb49861512f7c375537c3683aca51ab222dacc2c537be6505469b21dd396182c919b817bad13bc1a2880d7c4662b27292b80b426d9b7acfbc26f03f7170cd18489de2e35a3d4530ceb090b52a2fbc80f4a578fcaaf5f38d9ce3601144eb7cb36e806c9b38de03c5e86e2bae5674f32d400b1553fe407440fea7990312bbc2eed3b7ffde10130fdb85a9d1262e2228438d231999e49d8b4d8c8100ecf31df55ec0b0f86f1fae08e8f9d6034f85ee80d9307110f060c518eb86b8e021ef7f7898f368b23418170cd7a868ca3ebdd8de4e3a7873c392917cebd90d1e77cb8cf2ef65209e95e41b372377538394052b12b053cfb49cf04dcc3524815d036fba1fce46155d24f0ff9c1f25b58bc8f859b0f1622096ff69359cbb6cae2a044a597c8e90c97f669db48b7e9a133dcbef63a2ea1adbcd7eeff057e94ba4bc46bc193ed5cce3a0719a23b95bd95916489b9a2012c9cd04f46c3f5887e27fceaea8c16429b0c70df2176f428e3f0f2d7229303fd86fd3f31253436ac633141e279e3f04bfb47b66e25920f8d2c5daf6273c62391e30cffe094611f25ed714f3b2e5d28656ce77bef05d1472600b8c6787e9f9a2a7a3ec4a5c75749fc7876bd637507b81439df28759fe56461daedc89c735eefc5feb3094cdfca1e9c44ad696cfda82703d6ea11ec44a576214d9f7dc891d6d2d3998da665d10e2c1c807d248df651989a41e1e57402c37ed626cbfbd7ca21a35757ae7a4e739583aafec17b60554066a63d521a4c8906e0f56f85f73b0466fed9365966b89c778975e751e3453017de75bd7ac55a89e3c1fe5f9e29d16818344ee40943518cef2cf8add1ab4cad10cfb5f9ef1224cc7c46a12d99d91fc5b7b86abd825dc548d394c8bffc1d8372a40fb011421767b1fcf99dd78a5a6d632e09c902a74278de288a279afee23940a2fbc7663619eae9a0b4c221b6819a93be27d7c4a5c14a2606e695decbefaf7e4852280ab69c4a87823cb04caa4bbd15ca479c1b7eef13ef3016901e08da041b7040f0f5fc6b64eaf12c00bec8e63b9e974671dc8bc3d9fd5374a800a28b88d718c8cdb4281d44c506068a048e112b9e0658a4ebd099500205e276cdb05b3162ed6324c8242901da16806137e2a523e8927a90be0b10ab1e708299c49e7c4944eec5408ca990dcf0d5b7dc2713571f407ae6e35181cd0d705a1abda0bdd82f5b3b1419b039db926086b11e54068d3bd2481fe5d8025e09b72548fd6c10391ec45c7fa2765578c6a0918b7d6af2d8dc79acd2b05ecd190667b77a8d57234fc62ff61b66983daf5c1a19bd47bc2b626cf2e3a3276436855faede2832e91ea16b26a900c3e43584e2c01b2ec986d0a212428146d9254ae7c27fbe2e9fe18d8dc5a0061542e4d1ec14a6febd43eecd6a4ecb3f0223fdf5dcffc509161a720d041598c6fcb359577bc8ab447a7561c71b0a287242430b78cde49c0e037e01c2f28633571a9284134539356766bc63964ccf9051b361d7d17008cbf9b2c40ea04fa3cb0f96517acff755509592d03841660d2016c25ecd330e62ea1df2385a4ba04e71d91428c437f5cfd1ee3040899b94a351ff936bc72b874f28e330afe0cf66e37c39ef5c38f34fe70f981bb883634b3e84c336b5fbdc0d153e2a0673ce4d3709f35822902a2428a3ea29b6d92b81f4b7de6345ff70dc8e3b4c47126b186878107cc2999c16765b52dcf48056ccc23d6623df14be4542facdb654e3edc5a35315b65132571b3db199be785b062a3cfbf0f3aacf18ea274aca3c30265741d006abf0c706695a16dfc5a079cb38d0f3a897d3c09ec1581aa1a1ce91da5840507699537b9a4df9a8c25566d8bf4f294d8007517af43610732734694cf884c53e9b6840d042a85d42355bf9f8fa718df4dbed3a118172dc3da9f4a8c53d9272c4c93e26e8e47686ea77d469f0a8f7c76b773f54ca7dfff85e87f8d5b464fef0e4cdf791b4235b8ff02c6266a845679286f34f76f7c9ad67489f6e589231df5600ac902c4903c25e8cb9fdebf6062d87266d7883d93b7411f73298fd04e6569704b150f3f37df6384b6feec2fd656671a6a44b589ba7729f7580127825f2ec6605e002c3a2818a13bd089b5e42d14ee09e7fcdc288019125344319513906b32979032ae70e116855998365e4fa77e282a43cf98f93ef6aa0e0768ea4c8acb556725fcf41d48383f6ddfd62bdfc5b6028e362b91b9954c098e16a42139478a0ddb612210d67bdd808fd88cd33268fe652308c66a742f4409d3a42fb6510136c7f910a73b437c4daca57065538223a9e5a8dcef1b0682befef54cf13e36d6faab9b9f2aa976f5c01133d97bd5f3b71c7943db45e494416fb2d00f8f85b196d5307e22abe5e0d48447d5f9df003ea626921bc0dcca7eea8d1f56defa31bdd2f61792774de51970200ab06c703862d446ff22ca7024f865f4421c09b97d2f2ad4636d88a208448f8e065ee5c8fab93dd765000", 0x2000, &(0x7f0000000a00)={0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, &(0x7f0000000300)={0x18, 0x0, 0x0, {0x2}}, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}) syz_fuse_handle_req(r0, &(0x7f000000a380)="1889e1625e95eb60b81451ac8e88770e9c6915888c0a4dd7088b7cc0abcc77d43121799253fd56de16818e5c727e4f6254cc09a6fe59299068c07cf463bc0c363b50e42870f35f18505a8068e037f6a599bde2bf99e6fc03d67e952593f436717379e29cd556b1e1fa8f58071809763a2114725d528c1bff3ed55ff1e6f9496bc6692322cde7054e2785f74e47072e9871a95d107c054d33f1630edba16c59ee24d0430593cc918566799d74c5183f601be4fb2b227e4f0684a7044dfea1d724fd40c3ebeaa644e52c3139b6ac925775a27edfc71a7d51c2901e5173a08ddd4332b2ad90e730d586e5bd54600b9c2320d22c269c12926826ca32542576be6b7f4caa556a48223313961b02f836ff4f6b926acfd13e374047fc1aa59538e0832ddb7b9efd2b53a1afc39d8c345deb89581c4e6e86f5e1842a9108ff1f0ca26a896c596cab32a366fdb026881894fd3f1709ea6155b0d809755448e46b16edd342dea12c361e8df41d35ad8bc5b61b0fb0b53aeae91a9106f9644e9744ef9bec69f306d475c13af47bf6acdc0ef34722edcaec82d1bc7c4f350b161534c69db182d1388dbe14f013234c2ea1e95ce6f65c4ea8bea4e36da6118b12f672e85805265ecfd4b142143de8ec19aac8225730975755c311df9d0f3b80020576fe50e1f7b5277c7da314c044150ac097fa7198594f6142e84dd958a302ec69c1ba51b5680eb95a38cd87cbf6a75db8ec3912cce3521cbdc956c39f44547d42e7ccb38d5bad937caa379dfca870bb7e5b9c6176e714c6895b95c2a7c8368e76a10e275849f242ccd2e49fc02ed0f060723bf37ad7211857fa4bda8723f696c5d2961b1c57a1eb4dbfea9b39c289a6f573f38efc70acf329b9406c64fca8b16d37922eef41d12fcd3de771701d7bf2ab09c33efd4135fdacd3ceebca5c3c73a03fcb007e5d3daf14f3c51c94a0908b7ff56bbc434a3fb4f727a410f3e9a2e15434dd92586ad5314593fb944fa1a0e3190f7c5e92273ad02c273e5e137bbe4b0b90c26cc2f7007b7791f8e5ec37c178504c7e2de852a01337f883f148b2a824e66103545fbd2a9366d6b4de5ebe1d9f602edaf9b2d04c09e47cb71c8d4f9eababb68e1036c9231507a8709ba8cb758d34ee7924282fda8d5a972888608cc7c12e1ee97aa4a99ac257708b6a498d868aef823d31472b7618dfdf644dc58a602515d630a772c68276829f1d7fed1e3ef98ffbd2e686afc171bc8cf72be235dc2f3b2d5376bbd7eb4bf0540de21c289a35e5ca221b860c8f40b6c31f6b9c02257b12b8ac2dc86a9aa1a8df7735e87a83c48c353c0a1787489f04c4cbce92e9e974f796e33fff22eb6cea16b4992e29962da70a50ec420ea5bf1a6025018eb4f0372809aa69c7862d0e45ee6132da0a279a59fed7e45a8de3834c340d481bf74dd7ac16ea2fafba8a2ed14be9961494e04a0d4248fab0ae65e83849445bf0ead114124986e01f11a021bb2791f4057a684874cd0ebfa88e1ee726e7467fd729cd7a04323f5a1bde56560afeace8cd76978758298f82d3f40addaaa44ae30e4b79ef4ca9d4f29a55e4d151ac662f446ce819124fe8fd8bc5e24040d963bcc3429c80e05bae5f4134423e1cf329f4d352f05a8bd88fca5ed09e74a68617b5ab52b710d6f4f27a65784f5b129a62df9a6df285ee4eab2605e983f19bf4bafe58df11489722505962b972965fee5f04901c8fdee7eb24dfafac1515262b831995d7db03643939402d143d72fd02d1961e0aa69c41eb48a7aafc84dae214d92b8f167dc8da25fe5542973cf8771151a2e9ab83cdcd18d32e79ee6e8255765cdd80b676357eead4a06485dfaa7c33de93fd90cdeb238fa719075ae1cd48f985a56fc3c574d93639d0b6a90996791fcd32b698a11ec7825f28adbbf18e4f8eeff59a759a7de85c7def3ffe8770b35f82a8a22bebda1e26a386c3e65fc94e08c9f47ee21893cfa05f1fc7afdaeae9b0750b8739d0d06f5a7fd78e1bc19cd6447c89809a141f7975523373f993f5e531f0614231dda69313253aa5db912e3a76e8276afb93085c1ff61eed88600691b873a71c97d9a0446a08d608242b2e225619423a6c4ccb0b3b61e0b79bf7066a330e9f412f0cc1ce8755bf4cbd54f3361c6d6d984485b954ee191012459e2cba5949c2a613db0afd172f16dd8b3740bc42dfe38bd2207a63b057d350655b5998090f8b0616e41e40cfd716ae0a45fa0aa1346d47edc8f6f4cdf86fa0356827bbaa2c5faf975e1f72b01b945e9a2c55cb8768e92a046f4e34b1b20fe237e9c2d9382504897bc0a7bf30562d9da4e6bfbaf7bb7292743ffe23a507c29864071af0dffdce6ee72b8c61dd5f08ade69700d22f2f4c3555b4d403afb59ab5e472cc9a832c490018216d4808f726287ed73d992f15feacbb212a4f6706bf908aace2dba1a62c945214a557451c81e3cfc9a0dff47537e9b817bafbf3c9490a4a6347224c4aec952ac7d7a49b05c0b155109d8c81e8b9f2f840e2b5c001ba389c18668e98fc07db8bca730700151efa95373a207457a2a2b75c732c4d7092d04f21962e1c4770ff1bb108658890077f657a81841b22a562e11a4858790f052aeb7c43fcdc375277ee8a0ae13d75a36b240f4b3c95d6bc762d5f394471065e2c9a92a3671c295195add13c6608df2cfd51b93f393615a5baffb03e9294d1bab37d4f62f2998bb803605f628dcabf0e1c7a31501476856d92345b04c39aae16b1b77c10209f61e6e5d7737b5763d76256a673c15a8a78c7bf9a950ac9c6f73624afef8a9d1cd8b82a98963f51f2eecaa6ef53faeba495240eace5e445b764e331beb9b2505400fd70ba8987147aca5865cce73a8b9ed6cb87aa4a404cf6ce78ba444af6cf7de32bebcf9fd3f6dbfaa796c9cb53dd76c066036e932692fd1f02a75b9bc8f3941c74397b58a0dd342478b6fb7e44ed485f82dc4be7bc43c76947a2776ce5b592bb64d56fa3e8cfad395bc27edfb35f6a4ad097fca7dff9fb4d88e80a51c9a486577ccf51375d507487e4ea63da4fe647ffb524b52834edbedb309259aa524848c11cbb9e1df00e69aa7fc4f9785a042706d3a6cc565430863a5f4385a1edfa40d63405f053ceb5df2f0db0de0c479888898cea5525a82d0972ba9940694df97f8e01427f41553b1ff495db0b6fa982588e6b2c6996b9e458b5862eae0a44dae872040c3a3946c2a5bf12c9c8bf8be180a13552248e8d37c915803dd79882bdb8e8d6e3a8179248441df7f79182e426e47b8fe60dfaef3afd9b8a3142aba6f583a355b81714ea6bae7f03d170fb7bbc68cb062d51355393a77e2ec31a43a1903835f4aca4238b5848881a9db314f8679e4cad5d155158a9d16871f8dbe56e4c5c72255b6170afdf0e1a471e1f44723efc28f9342bc464aac00658340cfa096c2eb7ffd1d5bd8ebd7dc65b960dda2e6e6bed23fed5e7766a1d6fd56b413d74363c7a7dc130d63891a529a58453d1de82d0fc4c62642a973fbc3d5ba743817464c2d91e3abb918bb00d36700b537fa2830f244901f3bed4e90cdaa8132b6e62420e1092cb8bcc2484a366d2005ffe1eba5f560538673efde171bb71c946d9df2b4366860cc6a0e5f00e2b6b26b098f20c3680a77079b2e059407a41a6e61c1f00fe9ca6287c4d4be228c7417a853d974a8aa8b1029efb5aa1d092b0c18b224cd0bd653cc0b7d94ace5effe3fbaa54cf3f6603bc9ef7e4708127c1435fe7a9e3754ac9387dfce94833a378fe3bc32fc2e50cc27594ef8702adff11c1a2b9e838065a7162758ccca298ce39bd54b250e852cbb0934bb892005626c569d202f290c12ad0c392a1beb723a37931544af59ddf800c117a690fcf33de2d11b0d61d7564d94dcb9e9ac17a0cc7a028be819268bb6477fdd462f07f4a8c3dc8c9b6a6c8eb452ce0e81fe4cc3e948b9fa28b85728949e1b75e22e0fcaabe03aa58a24cf95f91945bf68b36f3dc107e6c4fd68e7167b4cf50db316fcdef62c9c5ab90fd92729b37c327b2cfedff4dd6564c16909f788f69c80fbe3632a397aff5f085c91780bd8eb4eb3be5beff61e35b79811704cd71f2b8614e441013e4de3cba932c1188283ce765b68a2db49f1eb8d5e2cccfc8f1dab04677eb2445cf2eaa41e769244588627b8da8daf3b12d03e3329e35a5a0d2609fb4aae05f4916fdfcd79753e02087c05d386e43ea49df41621ce6fb592f0ed72dd8e4fa67898b14710d39b941f951a66872ea18efde4e264b31f5485b728cd381f762fe6c3a121fd434b98bff97726349d291f1adfd10e7d3d5a4e41533d9692bb6cf954ee9ad69f6e0df00bbae03c7a2e7355a71a2d36488fd2980cec95bddf7c0202375b01a6b25afd14bf23341d3090c6dbd1fda26d3d5192a3381a197e439b6e686b9fadaf5e981ba78d3ad89213554dbe2bad60a6aaf55eea48477d6c2c71c2a39c62fbbd3ada25360424733f8ff7e0134341f3f4f05ed5286394708d0ac611896e36e2fe0c49ef102cccd6597022d93c2cd4d0d10a92f7e7eb4afee39641989027cc343dec56e54eb0562060e20568ef4afbe48faf8a62b67934724445f541cdfc5110a22a14ac5ca70a3f8475429c22d2d0a018a50343cfb9e4ebcc63a58faedc6efef0fc905192d4fb5e3ef480ec304973b73cf738785a1ddca4706af01649247d4c279b9d6c735a63f049cfccc7487b9f162dfbd41d57cdf3cbb14410cf7058e50cfe5145f1a9fe4a816267c91829a2f3c50432aa7423a0656ab3fa76cfcec07ac18ee9c8bc0f21fc6ce77cc599ab2c44d85799774062d011c8f40805735d88c79d9b5c252a1e803150b32b852521e15d7ad27228430c4c8f71784d331edcf2497e905fb95eae5f8d47fcbf75f3105963044852ddb2e917a5b372da7c163c66665fc03012ff896fe713ea225a0fe4702dda79f57468558b87755be6f6e9b9f08939c85b48cd33defbb830ca915df4a93642fc3f783169492627ea98dcc15e673fc39accb379d604126b03754e232ed9ef3f2d241683bbece211583a4f3ee224dae3970a70bda65c1658aa53e1e454fdb26162595a0d12164b5163175e0c6db104506d4ecf7fa177530e224862c25e7e3dc771b1709a77611717b981dde90eed5425c2477e33241d179baf412395daae91893ecc44170d526f82ff92d9ceee89c72b77c5a7675c2db04e33128b5b1a67a60dd62b3ecd270b15ef302f2d976c8ce3042d2d7f4cf22f80acb219041ee0da94a6abe1e25c96b8790b9b982dde5eaff70262e06e853013f047c6c8283a31e9c71cfac58efd37d0ed53405bf50d9c576bdb05441aaa7c8a0ec70543d71a3d0be47e3a17207120c84f88b306dc1abc2b8c245f462e985e362f7fa80d6218fe234810de3db4ab551102f5f1551dde5aeb1e2d2b74196534120d43035da32e79ee096a83217d2726eace6a9e9f95bfd0b60e649b7705a6a42c55cfc6b5b380ef4e612cf560828f3986531f71c7c8119ebd6d3ec40213037f72bf561c4a6e0e327294912d0acfc84100c187f6af677cba57fac914dc28c7617142a952bc6a123a8daff5275bd30f354fe9719243e20ba40f74a46f2c1ce8bb719c8856f947473a5041f736d7a1a2ed679a44a728e8d2ef6bac2390749de18e831550785121d90aa3885eabda30d15541ece44fcc3b75b3097762792fefad7d7921907ed57116eef9c23e5d3d8726f6fc0b87044852b40c767a74cde375cec0be104c3838f9ec742f3fd4873cf917b003e9a25a1413ae7f54830840e12d4e0b4c34ed285b55024e78c588129fdc7ef0cb87593a0a475d1f0327d1b5cbeea0f612a30f253fed8a591708faa403a87effda543068a37701e82f11fbe9b8ea58934be16694bffaf6eb7dfc8a62ea85cef0519407805b7950331d563b9b9db8762467596bdbe883bc6a7cc95d227ed94addacc2b5c0b0c8c7c34ede1d33e6cb8476985e0bba05063079e1d6e665dfc69449d299560a34e246348e76144eb50ac5cff4f34985cabec37180e4daefe48b9b43fe1604e352201062c1def02443418cff15901006db2755ed69175d8da7ed16b8936861cfac6cdda3d20dff6bcc7a895687a8bd901857438ea12d2656b0401c8739b9abd46607589c7b3192b4f5b2293ba04bb06a825e558836717dddcfee651ef89f85392d58f169ba43dacc3d4a4908ff828cad01147459037161e8d64d1f7945ab6606014aa9b5d53b5830c2ac06a52f59fc3dcacc6535303ff029ae543f79a641e2bba29e45e1f99b17fe7c4fc9d10d94a7552379f33e4c87e95d08b4ef50f2c1f80b7198547268d154c428158d67237c997b7431a816246bd37db676051ac9b7cfd38216a4edd7109af878d33606f928a590784324c8d91f931f0e7d4bd6818ce9e8ed47791b7c5a09b718abed0c96a778c14d746a9e02c6f64bf74276cce8972263e8d6cb65620d7679aa80a898452bbf6b16e3a73de5c934d70d7f67e0e0cc4fe678eb36bf2ac4cd9af4a1de9fac9a320cf63f120c14d9dd6ce5c7177b18949b7ca608116f0f98eaadcd7d6bde40891e5aba4447eb3be8a10853543145047696c50fb510fad3884f456ea51dcd9981d39f0fedced8e5b9c28529da5c0a9ec1b41051693bc9b83870e156ec6f8bbe837a4e00b4eccea781bdb7dafb30856866cea19c8098f6661e3db53bb9bb01f401e727f90be17b7b6375687ca71567bb53d54cf28629c73820558c581f1940fc204c8fde88f212ea6183858e37d387aaf0b8f109c876322f04ab20d774a1a32ffd68d26ca9a1e5e4c97c7880537989df5c78298a1547a97c100add178bb90f1af451277a1940bd3c487346303eca7b219b25e44d6d2825b40a07e9d1d33f5cd43a420aa53c6cc7a405a4a2269fe5dcb5a17d943d0691e3db04fe20ae62c63d0b389b66940be57a765d26929ad4260f36a258bac797e819e92b546d82dcaab8edc216af2c4343b21809ef0f957b2c5787355649a6588a4a1a786eb84753160c464f3c466ea6f1724b360640cfbbfb581b33cc97a7021e9712824deb0223f43017f503dfc610d99c77c80713f24b22f0ad6a17e872a2c1c6a6d3a44814734c34b1b791900967bb5a072859f3e09798bf92eeebff2e246afbbe02600fc55818d12c4255ec7b0d06c2ba0851b3e5b6c594651808ea6ac11c1ac7399da49e1dcaacf668c7fc5b323b7c155f9dc1531c9682b6eac7d33e1f0727cdd740ec297645c3a3d72b9e376225f145471906671da9c0e9ce133f522e57d911adbcbd4e039c8c742e72cb0897a494aac150f563253faec42dac843d6f615787ecc6c113337c6b2af60d7f9e6ed5cde32e0251eceabd9b852db89f9a63027e86e594d3a1741ac8e1b9425c78b8549f13e7e5547f6ece2e90d1bbd24e7015f11b35d3c3be3b9a3be1299e86dbeeed4a8fb39a914f436908b6aeca0384d70bbd14b71d65b90018bc8280f917d6317ba7807968de22608ddb0675c7e309352173827819b0d0401347331d2ceca40ae3027d6bba3afb05dd7137faf3f26d13f36ce0f7bd9d6da0b8c9a65c4ff1e65c3c978e4ca20a4ba3758600cba5ba727509639c6aebf5d06c6d92b3037aa65c3031f189415cdf23fcfde0c46cc83566bda454f5e077e07b18c0d9ce42908fe904043ca28e164d10c79d6bd8fc47fcd0404120b4b5ae78712c245aa3155526ad7e1cadaffb33070fedbeadf640ea5adcb69489c7eb17d4352c4781d5c7385ddc072aa6842b87bb639740c07a5f4d7f630aac3fa4021893c7459bc9673c385fee33fa8c4e41c87ea7d43ad0ee39d4561eb408d675d4211d7dfa0c46cacd5de656d89923b6f3b6a2e0e5579ff1e8caaf70508b962fef21a021387cd41a32bc3699fab77ca998c8e96cdb983e7affa4d3fec291f594cb56cc5eff45f5664bcaba0346b06b24e80bbfd890a16623be44b294a822e36b2294b68d97e8273d926bbf223dcf009bf66ecc8d791c00819ef298cac73bfff3f95122273cde2a331a4943326d706e6d57a46da740bd35f1c73cfb51052edb763032b45adb7483d490e8932f1bbc56704276f19517aedb357af89345b4a5ea84e0e75c7d45a1627521ef11cd02b7d9d0e0e18ef1deed315ff9068a8c23e04c4440e8d5cf0013c4feed2a561707af5700f4f77bb8f6e46ff703c075cf4f8b72791502dbb2243f55c6fbb972c4e481ec0478260e082b858174736cf859594720095bd76816fbbe494944353357d4ff9f8e0543911eff671db5d604fab6affbc2a28d6c771507177968098670b2ec0d11b92f6ca60fc7f7fca4305f4f911ef3c522325dc4cff15d23e72cc61af4105fa35cc3f0b7170b72ee9d058564f443a15188b5a73f0ca0b05f1dbe8ba6a3add9b95bbe244c3804be0615271ca66735ca51561af5120e500a538231c913579d9cad28184a7e67d051755f8a5b5b18287f58c15c38576e02ba51dea01154d377a62f3bd1c00b597b3675cf4d5745cf6157bdba58c16c97b2b8bb83e078ef8e906082ca6a8df9ad5c6becb136ea0a965828540caf7d7897dd4197755c3a7df3ebfd2b7dac1c12c960c235a6a1468639597e59c71c4c5b3a5fbd5b48acd138ff83ffcb4b91173aff57cc289896c3984e040493a196a90ae6aab8ce59fe35e33ea13c3a146b0c144b5fd7f5b34c6f9534cbb272e5da3cda900c0eb2c9f226a6183a32bac8e8e53eaa27815f1ca1cc467b7fa67f827e7421ef93df9d11493c2f6fabc05aea419f140a94ef3b4eb2827a6935a36e74b27a833b7dfa2451dfd12ffd1790ff4961dadda2bfb63e01d6e46dcb7a7107cfbccec8064ff78f17bb397d98d7391b5f2018c5c07a033be0d148dc1c0f779a188d03e74827957980088099a34fdfb5156eb678ad44f8aa72b0ebd9e4ad6be6b2fd1ee8c521e0408d99da191652bea8a673a1029036b887027def702299c6721c550889687ac3375795b30388f1234f3ab8ab4e3a17910d445f276d6cdfc0440c3476d63b032cbb15c2ecdaafed5b0598a90251f1db1abfd22a640532ba13b55f2746be388ab59ee16cbf2489b6a7c6eb1be844f6158d733636fa700f6f5a4c0690410c3a5860da9341e5241b7b1f3484c61f831156b185732643e2df5b7e62e856b8b41b121e4734d533455666575c8dd1587a5b237a9e54a12f623ef0ecc33197269acf0fd3ad5ac7f1e88e2b1ddddbc073e5d3893e9494ad203dc14a28b1c0f66f257670c920ea6c77ec79e5b8d3484cd93bfbf63dba90acbef7cf7d9135d00a70c4c8b7988aec4bd43367814a93ff0d7b76b916973fdad8f4e24195bb8004eecb1f054a98973713c2b2f7c8c90253dc505204aee08274bedb8274e0aedd980c253300e2d314fdcd3eb5fdcd629aae9a2e2432a6ffddf20fcd8332d84157b50611aa3f4362900c1c9857e13fe581616b3a002efac06c4027e2f87e08107ee3377712a4b370c620176ff9f40f2a95dd2ddb4063f681097166ea2328100eb0cb3dd0f63dda250b73a91972840b9582cde47b0403f317c183946a780118e94d36cabbe87659e644907b57479c71aba5bc26c5d0c2405ee04f171e6d6834aaa05c5fe25379b3165fedc0cc9fd981a512f3601a79ca55ac17e36ce6d1222d443d85b2d004b9e61a8f9a71dcac0f606cda97bad823748ee5aa51d0a9afade8891a40cdc581c6b0a5befb04568dc97aa10aa02db49b89187689687fefdec26f52e18f57c398799a18709b05488ec244a5b44c5e74c287f99d55c5d997235359b41587cd82f34612f77d67dc18d3d5f170f7db6618a1d0e7ca650deb8cbae1b7a1f1e669f4927ae23217f2033b7be991475b378e75a13a35c0c5155774ccc9b44336da53f4165380b1a6cc5e318a0073259759cd8fc2c1588a0725e7be5c3ca7c0e4aa14a2a39ec991f93e42b8f43eb8dfc4691f0fb20df3dd2c7b8afb56a6e6bdb2460d230039232af232244b29e877693f767bd303ba3b38898631b39beb57f48d79bc14359bd89ce0ed26a23d478979c21eee3d2b3834847f20c9e40bacec23ae71ce559723582c407243b927cabbb664eab4a3a90b05553a5c2b3227c7f22c72011f432b1c523950f5e06c69c48b32ab2e5893bf9ea754b91d49fd080c638a75bebd234d7a10747991aa0d0eb4adfda31303344c19ed52c2565cce5a69917175d696751dec797ef178c0ae8473aab9f5ce36cbf9316b74a6c6dd85a05c887eef575cb176940d4abe82540d729a2c4ef1d1087826bd435eb3a689e1745251caeaad7b67bf1623e88613ce3f9f8c1239225fe414c1ae5f25d221214b26fc4f37b30bd031b4658eca0d43eb74ef65d18c9ad0214d8706ba2c9c592c476349e728246d476210dddf36bc329fa447a780eac271e4b02828a3aa2085579ea34620d6b08ccad6b3852e7914fa8801807d4891efc547af17e782487b6780b1115c656c02b4dd182d5c1155430b28bb1bb96d052fd21b890d70c87a1ccddcb18e8708b8c86e0e6d4da5b936ef3ae9f5fc68793e223086e0a7dc6fbad64a4b49aae74dc83e60e8850b0cbf9c5dd6bcea97d51aac21939b320e3662f2e77158af60e3d68c395d91df459359dc0fbc0f5c47f5024cbb4ddc2f496021531088298760dc4e41d6bf63fbce49b4b0c69fcf5db765d3499640b61d4896d098e671a07911473e041f8c54769fb3d07717d55c9d24c8439a6f4171816bea2643ef54c8a84ea3b91866eed4379107b860e8ea9aa657e66f8e81e1ed1a336957e66c93e0fbd0ff687584d714985ee1baacd8633e5bcd6c15f53fdf9c7cd4a7624af4afe5eeb8773b0ae7ece847d83b02848aafa2aa9988c594d27e97d0d25884aaeb74cec4a673adfa8edbe65114e60da95733600a090800dac7a69b2995722a2867a91ef592e89c17afe0862e040008a02d19f36304669da2a2f31481900051f9f87918d4b289f18cad30e6b64e606fb3f8c7ddc263ec2671ba91e1416dece812f959a91758ab8f780b786129a959e49ae4ba95283c0ec9f164d9f3b005ab9c7717136e19b758e749203cc5c409c215d201b72024fccc0133d256584db7fb28874de56b0cf9bd3732f1cc02f8157934e4d643523b427af2aaf96f66faf4e4667c0772dc0f08a9b15a2bfd59ac206751edfa2ad37077f3288ad578ebd636be079cce09ae65481c93d8f1100140e263716f9ed024d54489f3c5eb092a7f4e92679edda6f715e480b0ea0229e0b8aea19f40dd8b29066c275e607c639c0e79b8902e3ebed2134029eeb157927d4ebec3fb4f22efba9f72eb7a7bdce79f9e0596587417addb14cf79d2a057801b31dda16594f52134248e2f8f216ec8b9e42706da8c81c5895c497ca4eedfb90f2ee71723d74dd34fa57fc1e9a1b8825918f60914bad52ff4400f79d6f8625d6efebcc547ea4dc40df5fed1f508ecbb7ed40a6cc50d436a668118c3584a8164259de111c738335d41a301fbf9e270ddeb4c6846cc457cffcab30780ccc96a5d5b2534a9952d1bd6c09374ebf357aad21a924300f0386f9a93e4c7a5f7481729ff8b8a17251f622aa6d32d9bb7031a72916d2b18a760b457887378fda25ab4bf40cb8706f3508", 0x2000, &(0x7f0000001340)={&(0x7f0000000400)={0x50}, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}) 19:43:26 executing program 2: r0 = openat$kvm(0xffffffffffffff9c, &(0x7f0000000080), 0x0, 0x0) r1 = ioctl$KVM_CREATE_VM(r0, 0xae01, 0x0) r2 = ioctl$KVM_CREATE_VCPU(r1, 0xae41, 0x0) ioctl$KVM_SET_USER_MEMORY_REGION(r1, 0x4020ae46, &(0x7f0000000180)={0x0, 0x2, 0x0, 0x2000, &(0x7f0000000000/0x2000)=nil}) syz_kvm_setup_cpu$x86(0xffffffffffffffff, 0xffffffffffffffff, &(0x7f0000000000/0x18000)=nil, 0x0, 0x0, 0x0, 0x0, 0x0) syz_kvm_setup_cpu$x86(r1, r2, &(0x7f0000003000/0x18000)=nil, &(0x7f0000000140)=[@text16={0x10, &(0x7f0000000000)="0f01ba0c0065d9fd660f388000660f19240fc7787e3636650fc72c64660f380a38b893008ed8f30f090fc75a09", 0x2d}], 0x1, 0x48, 0x0, 0x0) ioctl$KVM_NMI(r2, 0xae9a) ioctl$KVM_RUN(r2, 0xae80, 0x0) 19:43:26 executing program 5: perf_event_open(&(0x7f00000001c0)={0x2, 0x80, 0xc7, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}}, 0x0, 0x0, 0xffffffffffffffff, 0x0) r0 = socket$kcm(0x29, 0x5, 0x0) sendmsg$kcm(r0, &(0x7f0000000a80)={0x0, 0x0, &(0x7f0000000700)=[{&(0x7f00000002c0)='0', 0x1}], 0x1}, 0x84) sendmsg$nl_route(0xffffffffffffffff, 0x0, 0x0) sendmsg$nl_route(0xffffffffffffffff, 0x0, 0x0) 19:43:26 executing program 1: r0 = socket$inet_udplite(0x2, 0x2, 0x88) socketpair$unix(0x1, 0x0, 0x0, 0x0) getpeername(r0, &(0x7f0000000080)=@pppol2tpv3={0x18, 0x1, {0x0, 0xffffffffffffffff, {0x2, 0x0, @loopback}}}, &(0x7f0000000140)=0x80) connect$unix(r1, &(0x7f00000003c0)=@abs, 0x6e) clone(0x20002100, 0x0, 0xfffffffffffffffe, 0x0, 0xffffffffffffffff) perf_event_open(&(0x7f0000000500)={0x1, 0x70, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) sendto$unix(0xffffffffffffffff, &(0x7f0000000280)="c13045b29ae9d769a494822c309d8d2f75ec37d79b3e984253994d2f4d2dd4e43384af979469722a3d0afe5850ded02196dfa2a56b556ad0b2791993356b81e7cfd2d69c097409bfe6a05e56752278931d996a7b9ab80b34e492220aaae8584e3652b8c32652f371bd379f03b89250d0214a7696cf71fc687495378cd67fcfc7be5e19c1c0d7", 0x86, 0x20048001, &(0x7f0000000340)=@file={0x1, './file0\x00'}, 0x6e) accept4$unix(r1, &(0x7f0000000440), &(0x7f00000004c0)=0x6e, 0x80800) fcntl$setstatus(0xffffffffffffffff, 0x4, 0x0) bpf$PROG_LOAD(0x5, &(0x7f00000054c0)={0xe, 0x16, &(0x7f00000009c0)=ANY=[@ANYBLOB="61124c00000000006113500000000000bf2000000000000007000000080000003d0301000000000095000000000000006926000000000000bf67000000000000150600000fff07003506000043fe0000070600000ee60000bf050000000000001f650000000000006507000002000000270700004c0000001f75000000000000bf5400000000000007040000f0fff8ffad430100000000009500000000000000050000000000000095000000000000001c0a7900009d3c2792432a4fa650c512aee994a5642cb064ecd5615f3196e3359aceb7556e7e60bd5d2e4b5992de991371274fdff6e79fc722f15659a7c85615c1b88bc894123cfe2314e887c1677fbefd35893d883a2c559b7a34db461b1974af360eace66cec40d92706d0bbcc5bf6fec345ae9606c3c1a348f9b395592c1018e5e4b41b13000c94df1f2db24c67d4c7ba9ec035883e2791a9e9dff3e8bfc7d1be000000820102b1900000000000000000387a601e3a3412086dee84efd375f0645f3301f55d3b9efdfbed9b430bcf0418e100bdff1c8bcfc0c229874bc3d2418bab997c8bef9aa55841caa572ddff9220c67c9e17bee524c3dc747445763ecb0a7f2cd12bc34b0fc0271124cfb5279195f701000000f77c71294bbfd85878726c49eb89085967722da6cb884d1afe82f7f722e38397996271700241094d272dd8b754b2dd36d44f92991a7817450bc7921dd372e621dd447b86e7ffd1bdc198deb495cac0995ca3ef6c1affb693ae366b0f11db6ee4830db4713e5ce6cac6a27e29f171b8e9f172c3db24558d77b8bf18be45c50b3fc005fa7b134dfc948f6015e0389d7f34cb9c02cf517c8ed7a9b6159c1446ef1c2ccff2bde95aa860ed9b836d6b8fcab7663d9bd8415e6f90fdb007b8f3e08de3a638c4fdb8562eb85173720c1df1147c9f5013c82fc98604bd70cd56609a6b739437e3010000d9cf81bcb1d262845762f6b0a284cc463b42492bab0f7b25895cc3ba8bf0b5e0fc018463d03a73fa85429725545128b0e9b550a13d0dd35092250bbce4f618cad2375a34c7f15c3096f300004468cf1aba4a6f21ed0eb3681c696320d3251b7eab79ad8b126500419e25a94ce13a7a96decb79c90b8df10b1e364cf97eaa49fd22942a0fad0d814f230f954eec84ebb7e20594e2e6f2371dda9fb3977f33c516aadc9bc51f23b12f761c4a0335cce4fbe7baafc8d0a6c6d8d0ebc20400000000000000c83cada15d686de0a0bebb94491b4b655f94dfa2ce197dc845ad83ddbcd4c896639831b8e5f254db99752a86b576337ec250c6f83b8cc300f8ffffffffffffe9f5f4628de6563809cdbe2101399c00000000000000000000000000000000d041c283edaef472d000d169d827488760c9eaba70ba10633e1ec690ac69650b22e96fb14b2a8782390bb42c2e80d24747ac70ebbacf42f7b7f2d5c8b32e999ce7da869b165932bb588ea0f7a044d753"], &(0x7f0000000100)='GPL\x00', 0x0, 0x0, 0x0, 0x0, 0x0, '\x00', 0x0, 0x0, 0xffffffffffffffff, 0x8, &(0x7f0000000040), 0x1f1}, 0x48) exit(0x0) exit(0xfffffffffffffffb) accept4$unix(r1, &(0x7f0000000580)=@abs, &(0x7f0000000600)=0x6e, 0x400) socket$nl_route(0x10, 0x3, 0x0) 19:43:26 executing program 3: r0 = socket$inet_udplite(0x2, 0x2, 0x88) socketpair$unix(0x1, 0x0, 0x0, 0x0) getpeername(r0, &(0x7f0000000080)=@pppol2tpv3={0x18, 0x1, {0x0, 0xffffffffffffffff, {0x2, 0x0, @loopback}}}, &(0x7f0000000140)=0x80) connect$unix(r1, &(0x7f00000003c0)=@abs, 0x6e) clone(0x20002100, 0x0, 0xfffffffffffffffe, 0x0, 0xffffffffffffffff) perf_event_open(&(0x7f0000000500)={0x1, 0x70, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) sendto$unix(0xffffffffffffffff, &(0x7f0000000280)="c13045b29ae9d769a494822c309d8d2f75ec37d79b3e984253994d2f4d2dd4e43384af979469722a3d0afe5850ded02196dfa2a56b556ad0b2791993356b81e7cfd2d69c097409bfe6a05e56752278931d996a7b9ab80b34e492220aaae8584e3652b8c32652f371bd379f03b89250d0214a7696cf71fc687495378cd67fcfc7be5e19c1c0d7", 0x86, 0x20048001, &(0x7f0000000340)=@file={0x1, './file0\x00'}, 0x6e) accept4$unix(r1, &(0x7f0000000440), &(0x7f00000004c0)=0x6e, 0x80800) fcntl$setstatus(0xffffffffffffffff, 0x4, 0x0) bpf$PROG_LOAD(0x5, &(0x7f00000054c0)={0xe, 0x16, &(0x7f00000009c0)=ANY=[@ANYBLOB="61124c00000000006113500000000000bf2000000000000007000000080000003d0301000000000095000000000000006926000000000000bf67000000000000150600000fff07003506000043fe0000070600000ee60000bf050000000000001f650000000000006507000002000000270700004c0000001f75000000000000bf5400000000000007040000f0fff8ffad430100000000009500000000000000050000000000000095000000000000001c0a7900009d3c2792432a4fa650c512aee994a5642cb064ecd5615f3196e3359aceb7556e7e60bd5d2e4b5992de991371274fdff6e79fc722f15659a7c85615c1b88bc894123cfe2314e887c1677fbefd35893d883a2c559b7a34db461b1974af360eace66cec40d92706d0bbcc5bf6fec345ae9606c3c1a348f9b395592c1018e5e4b41b13000c94df1f2db24c67d4c7ba9ec035883e2791a9e9dff3e8bfc7d1be000000820102b1900000000000000000387a601e3a3412086dee84efd375f0645f3301f55d3b9efdfbed9b430bcf0418e100bdff1c8bcfc0c229874bc3d2418bab997c8bef9aa55841caa572ddff9220c67c9e17bee524c3dc747445763ecb0a7f2cd12bc34b0fc0271124cfb5279195f701000000f77c71294bbfd85878726c49eb89085967722da6cb884d1afe82f7f722e38397996271700241094d272dd8b754b2dd36d44f92991a7817450bc7921dd372e621dd447b86e7ffd1bdc198deb495cac0995ca3ef6c1affb693ae366b0f11db6ee4830db4713e5ce6cac6a27e29f171b8e9f172c3db24558d77b8bf18be45c50b3fc005fa7b134dfc948f6015e0389d7f34cb9c02cf517c8ed7a9b6159c1446ef1c2ccff2bde95aa860ed9b836d6b8fcab7663d9bd8415e6f90fdb007b8f3e08de3a638c4fdb8562eb85173720c1df1147c9f5013c82fc98604bd70cd56609a6b739437e3010000d9cf81bcb1d262845762f6b0a284cc463b42492bab0f7b25895cc3ba8bf0b5e0fc018463d03a73fa85429725545128b0e9b550a13d0dd35092250bbce4f618cad2375a34c7f15c3096f300004468cf1aba4a6f21ed0eb3681c696320d3251b7eab79ad8b126500419e25a94ce13a7a96decb79c90b8df10b1e364cf97eaa49fd22942a0fad0d814f230f954eec84ebb7e20594e2e6f2371dda9fb3977f33c516aadc9bc51f23b12f761c4a0335cce4fbe7baafc8d0a6c6d8d0ebc20400000000000000c83cada15d686de0a0bebb94491b4b655f94dfa2ce197dc845ad83ddbcd4c896639831b8e5f254db99752a86b576337ec250c6f83b8cc300f8ffffffffffffe9f5f4628de6563809cdbe2101399c00000000000000000000000000000000d041c283edaef472d000d169d827488760c9eaba70ba10633e1ec690ac69650b22e96fb14b2a8782390bb42c2e80d24747ac70ebbacf42f7b7f2d5c8b32e999ce7da869b165932bb588ea0f7a044d753"], &(0x7f0000000100)='GPL\x00', 0x0, 0x0, 0x0, 0x0, 0x0, '\x00', 0x0, 0x0, 0xffffffffffffffff, 0x8, &(0x7f0000000040), 0x1f1}, 0x48) exit(0x0) exit(0xfffffffffffffffb) accept4$unix(r1, &(0x7f0000000580)=@abs, &(0x7f0000000600)=0x6e, 0x400) socket$nl_route(0x10, 0x3, 0x0) 19:43:26 executing program 5: r0 = socket$inet(0x10, 0x2000000002, 0x0) sendmsg(r0, &(0x7f0000000080)={0x0, 0x0, &(0x7f0000000000)=[{&(0x7f00000001c0)="240000002e0007031dfffd946fa2830020200a0000000000000000e50c1be3a20400ff7e280000005e00ffffba16a0aa1c0009b3ebea966cf0554edc7de8ddeb133c2b3ce9fad90f15a36a15", 0x4c}], 0x1}, 0x0) recvmmsg(r0, &(0x7f000000dc40)=[{{0x0, 0x0, &(0x7f0000000140)=[{&(0x7f0000001300)=""/4096, 0x1000}, {&(0x7f0000002300)=""/190, 0xbe}, {&(0x7f00000023c0)=""/144, 0x90}, {&(0x7f000000ee80)=""/4102, 0x1006}, {&(0x7f0000003480)=""/158, 0x9e}, {&(0x7f0000003540)=""/164, 0xa4}], 0x6}}, {{0x0, 0x0, 0x0}}], 0x2, 0x0, 0x0) [ 370.522269] audit: type=1800 audit(1623095006.293:325): pid=22957 uid=0 auid=4294967295 ses=4294967295 subj==unconfined op=collect_data cause=failed(directio) comm="syz-executor.4" name="/" dev="fuse" ino=1 res=0 19:43:26 executing program 0: perf_event_open(&(0x7f0000000000)={0x2, 0x80, 0x27, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}}, 0x0, 0x0, 0xffffffffffffffff, 0x0) creat(&(0x7f0000000140)='./file0\x00', 0x0) r0 = openat$fuse(0xffffffffffffff9c, &(0x7f0000002080), 0x42, 0x0) mount$fuse(0x0, &(0x7f00000020c0)='./file0\x00', &(0x7f0000002100), 0x0, &(0x7f0000000380)=ANY=[@ANYBLOB='fd=', @ANYRESHEX=r0, @ANYBLOB=',rootmode=00000000000000000100000,user_id=', @ANYRESDEC=0x0, @ANYBLOB=',group_id=', @ANYRESDEC=0x0]) read$FUSE(r0, &(0x7f00000021c0)={0x2020, 0x0, 0x0}, 0x2020) write$FUSE_INIT(r0, &(0x7f00000000c0)={0x50, 0x0, r1, {0x7, 0x1f}}, 0x50) syz_fuse_handle_req(r0, &(0x7f0000004200)="000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000dc4e00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ba045abcd5dfc67d000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000230000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000209bfd66eea2105600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000dce8f517e517209d0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001354c4b600", 0x2000, &(0x7f00000062c0)={0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, &(0x7f00000007c0)={0x20}, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}) syz_fuse_handle_req(r0, &(0x7f0000006340)="550213a07196529afe0c0440192d7e6b690b2971077c794178f51d5e3ccb8213c2ab2c2f9eeeaac3d26a2f97d4f45f2a79306cb35d2773c4877c1510919c87833403a04e443f0f338e5651891573291dea98a917f4f62456553ef1e4c2ff39f3b6bfa857c2fde23f3bc356a09b1ce900401bba2326ffdbd94f33d8de2e2e88332b80cd5fef8a5482b44a6e9ff53976da78235538407a23561df1fcb2aa25e96496e60b50e63f955b575f6ea992ec1120ef5d703a365589739a47991ed90db8f5bc075ebc30f1ae98d2dd9424afb051063d9f8b29b3891c4a15a7ebb498efd4ad84a1432bcfd862661ff920704ec2481ea567b9accfd0089aa576182565159cb218bc81fee7abf14cf7fd7ad2fbc9f84b66ad2ee9e72efe6de57459a0d8ab7de571be5409f07b18e19573dcabc67e9577aefeb5d076c8b331244dd8f7a4be820a55a59b007298911dbce2d9243184d8db00cc124833f82d55562ad21f64dd300a0a0abeaf8ed2cbd4e373cbc6b40510b77e9742b208a6b6b2166a9b640c6013a905e7f5966613c40b14183adba502a66538f4d146d80e1e38bcfa430b6ab8f23772c41fc291a01817fc447cd8920886669c439c31639781c8a1750182979dc91939a93f2e8df8823a83d4c00a109da1b99aac9f5400b0a18187cd936c69efea3c5959e34ef5ab1b4a230750e4a121540f88d01f97690c18ea599525db59dcdf9915ef90dbc390555742f68c333611731945467777315115fd08343175c16195186d91c317e64a2a557ceb44c930c144aa8f3a1600d064d2fbc841226ec4fdeae163c62a293851c9aa54715cf3caa3bb22012ab2244821077a83b4c7f6aa67752edd136d84df86932c625b6beb4de2499915337bc62c071343ca01d207913718d363abc6e1a0b36a891d46016f586c8b8cda719a52bddad74b872928cb772d86db68d9431686e742ad8e0d83597e94d6dcd01bdb14b8b5f76e56ed293fd7ccfc3d25459b5e2e45d6bc8cf7159d9f819d0935f3cd662e68d1d16d5bb2ee3998d0cc8fdf553356ccf56c89a5e0ca635faf9224c81902393b1fbafb098a86ebf6942106d6ff686f4ac73fb7c86bfccef7852ac6304c04ef9fdc156540ef072f20a403a869dfe9e8db9c58e1261367d2b8f9ba76a002953ffc679fddb9046fc94bd365e5d932cbf2f5e9b271300d1b90481d72f9fa41eb6e206c96c1096756d4de822999d0396eff77fe86c2bfa2b3dbdb0cfd54b3ddf378a0bbfc4397cac8ba586a3d6b4144e8a9b7a7ac998626afc7d1197c3ca954e48fd7f63ea52edb77e03176720deb4ef7942e604e5a4f500887a77b22760eb33d98d7612ce737af9ee0e78fcb69e7838adae221b4de45e8837bd468f7a405e5f8ed26275b22feb32ba3f12a893479f273e5eaa73658f1dffe09c10baee49dfd8df0501000d74198173d277f7123c4e131fe7db8f74d0390f0222f92c5859d57c709e54b4ad6549185357837b4b7beb28687c35fe62502e1a9a1dbc0f803580a6170b56e08c2d0104fc12c9b47b022bc4cb8474d4b40fe0e13f89a6b6acff2f11d24871ac50c4d10a63080d8f8368a4f982e65ad9fcdd37d809b1b55fa5aeae6377634a973482354ba216d9e24e39edd327063e4852c05db7458f56e6a0dd01440b0ead91570967008128dfc43b48e73fe380033e90848e9fd780be49aba2ff3c97b49f556f8c2c57ee69a15ff01fda1df9ff4434d7aca8049b3146255f870fac754dbb42945165ebbe7279b4998576f6e16332896b48e893f06148b7d470f513efa0f1272ae8578ba66e2042134cbdfaa1cfdd36a7f6c1874e858029429d9bb4f87eca7f7cf1900cd1667caf0f4cb74135301fae9e958f29bba29459de2208f84f4e2764e1fbed3aee309e74fd8598c602d6522f7aea29b73af70bebf10c924f588d7024855cb84f9098cbc7141ce5a6168ecc6d28e774adf9eb6aa9f28838e3e380b7b12dfbcdaaca0401efe633ad4ce12138d8a995b8b27721a2815c5e6331d2fd803c13e3175a5c02c5b5344409b06369a9d4b457db201512f00f53df67ae21fa597f5f3709ebedcfb347d6bf49df34179d0b7169a75a15af29869b2def01a7f5af087e444933ba11d51ce973d59a47efb884daf6cc5258d00a3d7f3ed3cfe450c72cdc5900569717c8699689607e66c5b5d6dc2ff8dff62e2047b30e80877827d2abba12e0af85b77246c7bad649631a9a0853cb79c7ba27f5f6ef5dac4613a7b5d1de79d83958ce4b37a17d593756f9c19cf3fffbcdc70eeb8cbecd6e77cb03e66fa3846bad89a2fe1e284f1fb227340cf4f4ce5bca6289c52410e98966446b4369d261ffc8057d56b625ddb09160298f1a015c1657c88603822566d9b4483801b4f5baaab4c530e61d9378132ec647d2444c04c446d3f2b972a46355ec08e505fa9995624e281292736808c8fa947cc4564c870f03ad931f58f68512c1327eaed18db6a55960ef8177b089011617e64df1d8dc0b9eb3010885f9eab7e098e5711f9e41f74d7b28943586666eb74ff79f67a16ae8d7e75561741c85c5f822f61b2552f877e739a77e20678d2c7a86cc6caa5852278be0cbecc1ddd7674b872e5d2e69c9a7383a33dc8f8c56548da95621211ac70dd89aa1862fa8969138e84810ec854b7b923bf7510ed97cb80037a84a8e66650bba2319dc30bbc3f40820e1b389f684db2d30ef28c470d82acea65419d20f518bbb6a99d734e82ed60fef979e6115fe870498670af117be3cec9aaa577caf1f61d5bbd12ce72a35b77bbc366c6790f44464efafb9cd8f9a097c6ac5423ed20e335c3992cc950b90fcbc7b4c3df2521a31d917af73058c93c1f3e26b47487736691c8b1370ddc613bad413982261e4e036579188b64cd9f39b1b4a32ca356769621c507b37f814ee0480b1a966ee9ebb56d6979a9d38236664fa1fcff19c8f0a429d86632e195e569ec47035c4eafe9185d19dc5e8c635a361af2b4fa33815361c000844615bce501648ee70730d7a1b1da4f0630b1ca90904f80e9e1efd1c8e1b61b05c4f040d5a0430381a53f4a1570491719560a3fb920d6722cafa0755605c955526e618221d1e4e766c35e84bd79ae479b5d178b241662cf9a124825101cc5e1373f3c9ce7625f7f08119fb011acceb88a9ff553639e7eeafc93b6135ecceb6eea4c3dab709005dd7be2f1490d1d648c99058f272bc325ce5fa663f4e68720a5f2b31986c66580a2be4204cf311fb3e5d61310445e942712bf5dc7e66a9370a5a4afb6aa03fefa3f0503d53cad9b79a3ef2ee9000edd8990d75ffa3759dbf0469b6e393bd3627a768bea18f533453b38d17dade925f7ca6babe27adc6fa3048d2a65bd2b0fd840a94ac5f317a1c839738ac89e7b22d1766308dd8247862f304fa51d727a27f0137fe19b371e5946555093e7ca69139c48afca4b4ac46c8d2f56d5e673e8b52dd94857fe953d10ca886c921b6626e869ac794a78d40bf49a025860fd57a0f437a4e650a9db9cddc93f8556482cd3676866d903b0f70601cc4eff564eaab292a4208d0534321e60119ffa6177934a2d1d7a6a1f1803e762c8d30e2a0d5311148bc21e4745b7c3dd57d0a616a2c49569942f2b48360df6c54f7a70f8a585b3a0d54feb7986d7d72ab0e16ba14187af4b9ac5a69428f1f61fe25e13cfb97ea30fd9a43e53b6841cdb766d6b3dcbc70277f2a0a12bff718b5bc50dec6fde5a0e24d23904edd201c8dfd51c1d198e325d65c18ce4d5ed1c6aaec28d40260949ed5c6bdc90f976c76dfdf399a9f9789fa9e176910f7ffb6427c3821fbc83747cb0d2ffe34b0b18fb34ddcaa70bb4624acd1ecf208e428b7fe89ed0cb0db2a7d74b284cf893807b4f76bdcfe9088912c8e83144b78ec8407aa37e94e5454946890174aa6be77e42fa0d764ae36855608d63d269164c3ca6a989232967f168c3f9b41c1204e02d7e9dc06010106f6b41987728775a5c31906bc7dfa33808e5523eacf7c914373ce8e61ea29407040feef8e9511fc04b7f2f9936a3161fccb7deecf83f507840898672fe13846ff8185ee0aa6734a704e4b7ab6ba3fb1c601e57528d68f8955fe42fcfa2ab0faae4008023b8a34ce4f861b5b86b5b507ac1cccf38355c5f0191e8ab29c90627657d6e100957cae6fbb3f0f4ae2049ed3a341732b4730b5bed1dfa97f0976dfebaf03a305da2a79d6b8f2e86f46bd7e257d170728d5aa55f786b5436a221b0d74355d55123fa1c9faf017103c3d6a6ed1e8e26fb8defd944c49929ff5ed4ead4e5782d14b09c9ebd593533c907679aa6a0b94fc8494291acb16e4bd2e4b953ac96f90ccee9e11ec88b4f590289915a6368716dc3e28dafcc5eab060d2c48911f288e501226a5145ea217e834eee7ebf0945e53baa08b8d72acc67fb14dfa47421081434b291a15babb97588c6ed5c7e79299056c70f5362953ef499b7a88c373a23302e3ecbc229824de95f12595f12580a3898533c48ef2385d7f398ce31c3dbb1c02547e84d0210595bad9a149ac653a3537edb419316f244f6a75108997b6597700df352b66acfc191c6b234c5c7beb2acf943f8274e0a159612f4ed440f3ff715fa2cff21b32444e5871a050e33e17695f1e3e7f65f82fa8783870c0c93f961807c6a56e666a5443948e2721570a9068ecaac4839c8209654e2efde43141b1551c9a966812b13bf4f9cbba828a1eb948a1e41a122e175c0ccaa9794660446cf18335ab13d1675a26eb81b1abdc776472d5da139a507f452159e3416532cf59eabfe01e72f4a4bfe86d293a7124ae3478443d00452c1a9be915f54ccee5d857fddb9ee4986c9186857fb4635a2bfb7b8885418fe48536cf60c67c10c729f92a8f91826e85e34e3eb78c186f2ff93b0972fbef4cbed448618e1c2cd7b5cd1b5d529317981b4ed973080615e0b385b41778cf536d9e24fb0ce048ec0dce5b075febaaf34de2cf59d9030e1a9ba924bbb5cb4098d82c511cc42cf9823ba77849bc867a6876096561ac209c2659baae0374ae4abb39b0ca54874eda8425942012fbca984a4c6c21071137eb4399d4c6891222c8aaf43cc78b1c8f2a9cec6b5acd748f9ac4de37b1dd18cd0f8d7f20337fd392ed10258457950184264a559b80c1ef92868676b258a9b579ea604adc0bd388a8b30822af1fa5120aba51e38e1dbaa840472e1f1f0eb86af5ec9f87a7324e49c4c0bd2b9365cb3d8c92acfdf479548acc9aace7a342284eb895b564fbb8bd577d4a310dfcf78f15be69da13b6710abc4cbe240a62798fdfba1b8a019f9c5fb462bf040cce44a1c8bda3819ea42627e71a5bbb0f8f3648daa2d26e81fff4dbaae971deb7dbd407b7583c9afdb7e7dfd7b81fbf1ca84d57b27e059acce70cb27ef3742e81a77889b01795adb0f070077b758d80e7a05dc66da4b9fed081100c3ccb5fd8ccc14dc36173673917dac8c6fa72c5989d0f6e0bd97501cbedd0a97137d3add8444330e1859005804e485fc997da58927f8cefabd995124e6baca61029dc3c4b091234610e04a7e8457c1dbd28a542497035615a990cd675d36eadd703492562404d366ac4359e66e5e8ec9e40cdf96cd1fdfbc0f2280d4358d96bdec660a6ae473723884aa79bd61b96ca11a7175d68a401a0b77882e7a44b3765a582018abe6a367d1478f5b06859e777f35d8f01a39c7960cb26477207dbc9a0a2af6d5beba095c606a9a11ee236aaf91e6b3b6be0639b2a13bf4471acc9f7f2f052d2a86c7ef0f0afe6ceabdc4f99036a05120b0c49cf80ec92b62c766035a5887f4bc8fa1e0c9c69a7b690c7cc2c8870f8e7beacba9b1a27c66f8d02e33c957d923b0a9dc4ef2b3237d2f83c72651966f8b13b24e1aaa5dd0122b75e3afc4cd478e296924349e077fab31a38e38cbea1dbc22689b82a1a4698fa4841bc0c0530dff14f368537c07eeac4a9c2e02e3b21669d0e039af22a4f38d4c21d861968bf312ede1ff02893fc44197363dfd89b5b704de61d609fe1d9013508e5b2276953ba5b1f8018c3a7b3c233d4cb3269f10ee6ca2fa9de79efe709659538108b36c1b71e4d2c3602459d57b8f46ffb541e2a6f4a19438fe3bd14be3e5682ddef68519cb56d79dd5b2b40d1281e84623b01af3c11f7b2cef780d06a0158ac7becf9b7cdc51618db8e7148a93637ca1a875d8ca2db07d78a5554760b792412c7c108335969c676888fa2d180030a8bbaca1c6c36b1fa26461146ddb13c6dc4247f18985a6cdfbdcb5a3455f497cf674fab04c84906627d32a0104d1cb3b1ebb9f398fb6c3a9af34a05ed7bb900335f1b84d2ffa2a589ec46f44399f4eb8f96928aa073f414765347cad3b0e03d551166e5e2ff9a89c15dabe0d46c925767df0f85e9c438ad99f0309400efdda91d4e61d0e592f8fda490b6791e41c098a9a839e040f5580b2d70f714e3b41ca8cb7a21fc2a778eb18a1e2a32c237c665fc4c496732e58b16f8607ab26b07bc59147218a8011068fa1d117b7e13a3c2b8cc6abcc8e184b0c7d061e94c0cf8c61b6ab194f3df5747ce68b3923b5998901c3d1294ba2a0df9fdc7a76c505bfd172a5c5bbcc0df736ec54a2a11b3a26115f1afd382adba6e3fde1e781737c12dab5c19bc5d27e91eab6579298d4b46c60c200d309df433841311008089ce0ab703ad7b7e17426391e22be7548e642cb4eb4703179cb102643aad424ddb72267b6cec2702fcacf19825303858fdeca7d5d3979c900db3ba5be2301c04a78c58ce20ac8f4a6bce27c4865f36511a4adb99ea25ebda5a6701c58347342ac876f80805695b8ad67501a793670fc76221641b89dfc5519389bc5ba56cd17b47bd2e075139c8db24e4c3a332723358ff5b8c6d3dc53fc79982fbbb6b887b36d52232d6d79684fed3add6c84fe070aedbd833165e5b547a3dcbb4977595fa9fb6d7d8b151858c3967b3e599571340568a2a651a3c6dad3a4a24127c28db3f27853cf3738a3476120f845df7803690ec6f97072b2e040995a957dfb6e3c27d55b7ff94f0fc44eb27b7fb81d5601ae88bd6de44163128bf423f1f76bdfaa9a170e43136acb8f5d3bde2b81e381635d4895f224fd8b7d9b04c8115454b0505ee03b332419c6ca3ffec3b127b036144ad4ea5b7d97482d298493e04c994ff2152815607c695991e85065f2c66a36a0c347a1e0b10ecf39500ed1476e9f6bb09ba569236d24459def02c37768956e567ca7c5c1c2ac05fb818d8610da9fb50cb6263edff4b6a165a13a1977f14f3b9101831b0f364f26e803ebede14a32fd37c5067c2be8c50be29d6757767424248ffb425d1780f9f164dd1d5a1999870af4f73bb09f632227351e0c5e24c357b7646edbaa599e0b62c569e32dbf0080dbf509879397c90ce4799b59e8888ae27844c760f901197250d395780e2e1087bd327c155dc31dc5b408e847b031f93e48345d3b32387934c9e68c9556b9d275d1634adecc0204ffb35d1960e736a34f0b07e2e7c4ffaf84ebc7ad39de16f968e1462c5371db06fdd21fe51b08ca295acbfe676e1e683bcb2dc9d3522b86191a151ac590fec45867cd81b97fd9a060e0e26f362b842390ba6dcf66ffedff1d26b87016b7108b4eb4a6dee0384a789d2305b871d7caec898358f01346d089844973aed3ae0a7a8fc6a5cc90a1533e0bb3696e243b28927da1630837a6aff33c2e8af1a7bfbe2ff8060d8df29f6b9643dcbe2e2a8721795636fe7b3187a48dd08a003f27dc2ddd76fb84db15572e0b2b857ed2ffe73526d92ee2a9b13f2693d2023bc7feb2ce769c2e8aa9973be33c77b5f8e147d4c7f414b18c9edc8cfa0169cbcc0c26d59f016fa1e80157bd8dac895a794a7211d83c84c7e003e663f65532018b22ed3e67be4eaf592a8a18b986245f6a8fded9b1562c6a106e04190cf0260905561565a131c3074a7af5a18dad69aa7d62636b9313c1d3e5689671912df51131315f715ea84d57849dce2ab105af433b034501128e2286e1d05384289711dd151ad097484755d32531508949a6e3caea36e6858ecb895f0ff5cb71f8b1cd677405139d5e95c6c34f421b0b1e0898aa74f7a96d7170dc0df19f1b88a0463608d964446967262ff7acafa54b0f95cd0c1b01c232db641cade388b6f348784e18cd33e97c132dfbd501700108b59ac80692371a4bca4f608d9357c6e1458cb372aaf02cf8742b164bf69aab3aa1bd6911202ae7d13f2d1cc27741e4856c9e2d654f72c205a9914969317b5dcefc8137aa564283d64f71209f82fe928836da1de181d6a52c9cdf1be072f8b5c44b063e7e3d629157ae1a768cfdc7105c6b50234b1dc8412f6d98038520fed97db8347cf02924291460fe3d392f21d7ac31aa6e90995756b6dc198c04a6c6eb6c5e41e1eddb8c78feff740273acf8938c0f52c108e5bfd7e559d73346e0b97595125992bfd6aa2097c0ff502482a641f8fa3b2f411a9bbeb9f8c03582ecd1d756013d793bb15b4c1f45f0a988f7bff685c493df30bafebfdcbd6b2ac26a743a0a21443ba776f17f021e80df5eed4926b10be1c952f839f6c87bc2457e1b95f73287895961a0d5874e61da6214b738124fc872376940480705aeb628919d8c9912909823ac384f6a072c72c03c12e2aa8462ce83737244f5525cebafbb491a2a75b4ae8006c2c9bb7d20b190987f5f85afd5b4c1fa8a643820590dcc5e9e55749df8e4aaac858fea295be26fe3891762cfc2fa45f823066280d2afad8653b94a813265f9d9107831181cf8839c72aadff85c745af743e0f22a30c28b4cfea2aa1139790d3e7b491b6b092bbb18bf773b06c3077ad3f1261b8f401e56d4c250c0f30e997e6a546f9cd1482b4717534065ffed131a8e4691e28456abc3ceca5849302cb85eb977a1743e9836ba2ab835f622cbfebbafac8a8edd97e5441ea0f84434b9949c4e5a91a7684947c0370d271e9788bd8222d5f53eee7491d20eb46c7321d5858e427b028ad279cb540c1a547fd18adea0e0d011cb7d251857c1ac23fb502f2ae515aa8c90bfa1bd693313100b6ff278212b06efb23fa836fd97331a9a276d3ec5f2256245674d65d043a072dae13c2649ea2f578583caa55b916ee6d65f510a94ac3ab6eca201f34f2074e631715b40478bafc594cde728d8f695287f2afe8af28859d5389034a75f89140eff05615cc41b06cc6879030cb0dc1788e4f34b3007a4081a4a8c8d8d47860699fd029d7d2a17c1ab2678fac43fedde3eacb441df00e61acf90d208591f70c75dd44892edc144795f86de15db7d9ae43dcb088c6eae8259dd224fdce809d6b4e2f13e6fe8e5b6da195ba0287ecabd18d48d1fd4f1e9438e120484df2e1ad9ceaae247b5b4c639413aef383d948dce80446ea125b67627d25f23e9fdf477351ac2d4f741e88dcd5f91550c71e72b84c90a5282f94bd9d1f08e3e240a0a4bb4cf556a52a994a8064a2c77e41d66077dc039957b795fc28239896eb2068ad16e84196b491dd47e16e12009398db1be984aaf6bf62fdb471a456b32c58f77c158461ac844dfb0858cfc81f591ae0105edde98acf7ea1c09599ae0e5c45b62f039e37a48b7ed91282aba6aab1d2c2b039b3f411b2f6897464a8ff2c333717e60a298be2709389cc644c70ce9c1a483a61e13617f0dc1902c3c8d84ca8ff9c0f43d022f448e100732afb8655c726e33ccdc2785d5ffd7ee533a1676ea93cb7f962dfd8ec47a32ef703fd560965b20a2fcd52207db1ef0046e4ddab569776ee7cf45f476772aafd16622b2613ccbcf4213183d5f079e9bee36d86ef709ae54422e38abe7a1db408b7ebfc72f6ca2b5dc19001142773fd827e72318c4fee1af716211d2401b104a2a40a2a3f4f683da6e5c8d827f798a73d2fa189371efaaf6f6e4c1a8460f6e6e51064dfa079adafc7d1f0472d042258395b2aaff31e943078e44a660b979e91e240628a12074a069b7045f20c9c9a9b2823d52d1a71cbd107b5b888170c2766fb012f60024c0aa6c5a7505cb17d925943b25101a0f9d2e78f40cca2d1266e06a85ab32f8f60dcd9caaad0bb5f7129fce17ab4ab9f2f1d9ffa5b9c3662498737d020614e54cffe567fb6d746c9a33065933c59b0f66429eb43013b43306506e0cb158d79d61938f52ec82a373bf7f03995e63b00fe4b109b3d918c7fb3e9d777771a510e1ba97321d2eff470d390776cd39cefcc1cba44bc0d0a5d7ab038a2cf4ae61285df7fd2c863d3ff26640f140d6c05222f1c7def48851a367405776cb72f19049b9f87e6192227bbddbfad8f8aa4822f6dc383b94e54821de59ed22ebca2babfcc7672606b90efc14eff624f338d0b63fb20fe28b3b3b1588788c12e77e20992e82eae0aa6ecf03a627fd66f251b6ca686142ea50223db2cb10936cb8e619b811a21f914b3f8ed1db52da0a40fc63df4623eeba59309ce490860eaf0020e63265a565102e050340f9148144011ab34c8617a8806153c8ae062293937ba31f789c97e937e7226a5e2715a214120e38fdd66c67e19d40471994d2b84d9f0acbfe2c255c671f3d70a5305dd13e7555dabbbb87cc4e62b1b34cfcc5d1b34a664d79a46d6826d4eebdb5d7df86128a3152ec3bedc77f6c1445732468ed7b91123cf314843e939e369b69d0c657f612a9a9c9ff40c396d2a3c05b27a57dd6198428f7fa2638eae170fe584310c11d0b13a15ec4c1b658d5782b20de550b166f2d89835a34a893cce987b8a807e21686ca78493c906285d7915390bbec275bd5535804b46ffc2de6cd313235ab52b8e04e98b4a7539b6298c974254284dcb32875029c8066988f141034fc156a5fa861826e49140cc2222099608bd279e6f7b3b12db95caae852eccbd8ce691e0bb937a6c83f929c3517a0eb2f247b397c828ea7a97be6cc6a357e47fd52df8be5581ba6b606b81f173656c4f7440b54e644ab775befa10887a1b66e1f27b98708e80c7e2bd8791ab006db14f261e8ee3ff42f3b8a3a899d8146d24896f8f6e3e7e104ef85fcf2f9453847774f63650f63cf6d944ebaabb9d7f5b3f1a3175860acf493534325b9b5da74bbc226c5f346aafe11a974d9accccee2df02a81d971f564bed3f7fac752203ad2c1e8cff090f8ead99885ac203351ec4280a1d016ca6c520061d864ed0fcab91033eff1f8c12de4e831bfa957c1e89921b97c5891538b9dffbf93b424e905923ca5f25bd64a17d3726922b9cdbfeed6c80ff9d06a3cfd0e9497a7b961aaf9538852a8e93eefc8ab49f416ee9d1b22d70472fcd0a774543cd8ef286ef9fc586c3661b3c8dd8de3af588f1d91bbc1d3f354b5a05f0689ca8e75f5ec3e1f75988f9058f0c154a4d2a748b2bf6b8705242a739356329878b0251f2683960a6e18f1e9719623bcbaf3176fbc0dda2125f506475c81c8fb1364de92538400a4278083aa7673e9fdd3a13e75ae0ccf78321dcaf637977fea58969252f6485a0c7644c2b072485dc76748ae76e2a229430b3b5a1d3b7785dc560f5914733425a02c6cbf177e85544b6ea8cdeb42f05707519d79d01f18742305d3fd952246abf5732675f000", 0x2000, &(0x7f0000000280)={0x0, 0x0, 0x0, 0x0, &(0x7f00000001c0)={0x10}, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}) fcntl$setstatus(r0, 0x4, 0x2000) syz_fuse_handle_req(r0, &(0x7f0000008380)="1d3fc0588fbd1ee18d3d558a5847e5909b75ddf492b38ddca57fa90102c1981d37139db16dff89af93eba795c940c2869e89d66dacb9e0aed49166803315f8c1e3a428d3394e202f8983f2a7a557b15c11e2ae42e2f07ac634034c2c6d63fe5505d3cc16fb48a8119d815c5d5391518b847b1334f3d717d9ab5a4c85a58da58c7438e79be665e1b196897bdb462a2266798fb036d83bb993d48bfcb2774216931c85a4fece4b93b635c3f1e651560fcd6ce0b182aaf777cfa0bbbcb6e5e9f4d450fcb95559468684612a5bc1582e273fe8bd58088cf411e97f9b671a81d18e865c2d899716fa59c45d7034afa7ce30b800091bd01ca3df0e083e1457885eba6730a6c70601bba70b2323d6b669898290f43afd84c333ad8c4c3960f70d0e47eb8511071b4e2c6ce2b12332632052cb4367a98593bd39bfdf76d228925d3e7208fcd42d701881c3cad1cf204669e4c598c7ae544bdcabac797503bc1896d36bd0be9edb543d5428cb04daadc0b4e54144fe8a86e1e372cd773a00a3e759fee51aa7cdfedb8c2c13ed709add3235e70c1dff10cc5d473f6c1ea92354c8bb991be1c39f4fa739824cefb41621e8a6cc475599ad2a86f2cd5ffc85684346bd6aec793b06141ed44a4eea375dedfff21d720c725562ae759c5f4737c34d8f1183e6254016f5d54a90114ce910b4c214f35721edbab6b9ef69c89fb3f770915511ea31622c453c53f646b205a0c383cadc845ef9769e99dd58f242b24e98d8d74622f4b7a2b42eeec0881b435404805f177865eeb3263ac63038270dc90b418407cbd984de98df8a449ed3466bbcf6c4b140aa4c0fbcfd4d88e1534e17218c87c32fe2d88807e308fb8c3ab6ca8d145f7c6406459b926e07cb30ce4baddbb0824c0378589b3cf3e16c216163e2966d271b8484a47d3baa946cdae77fd61a10472da8efc228e405ab686ff5a29ccbf91f6cf62dc371e23198b34880f200428f4ca5214c2966c426ce9bdffd7ee2c597d80ff570f44f3a07f5eb24fa4483e2938c98a9e64459f04913564df5d1b29f93b934e95fb4f04dce100324e5d7e6c22b042b8773a792b88405831ffd63a5dec2e764df571214aeef33cbc6e66dc157a86dbeb1d55bb3cbf8e063dd536d0e0ff006ff850ab20fab4023ffaa07b6ab6f8651ee9ed593774a3c3520f595984278b30fb4c0cce3a0afb4836952a7115ac345557f1871511415bdb9f593057624cd8a150954241cd60dca17b688d97416c29b23a767e9184db7e19a74aee2f17d11fb024d906a22dd2ffa2da04c97348b74f4ab99248059d1ee542c5837acb69f1c83f50dc66f9e1674c1b157e1e4f95eb462cc8b3db4cb9fc52086c17f4d5a9fc1f7748dea1fd7af47a7989c1219fd22c91e95bd299d3ef22bc73409d9949422b6177a99b6a9f610b737887f75f718257b5b2dd515acff039886505cf2d8fcf9cf69f74b812121d219ab526480a565a6ec9c2dd4de1b5d2632833a81b5fd445bc049c5dfcb242abe6141943fab1417ba9d2174ed25c521a8e5f6d1354c93176b6d847aa9108b8f49313aa6fdc0a88d08d3cec4f9e623f829dc03aac91c5847d5de8d21dade12e7efadf216ac3746530ffda5d038fd0bc7d105fb8b9fd1cb2e789622b39c0d559c3f887e11d29cbbabfdbe9603ce261549babcba3ecc739203f08238a5ec44719015cf3bdc0eac85c3d72ca34725f09ef8a5fa7cbc3d9197ae877314de309182505e0dcdebb78fcafb35504344770642bb13a22914b9fe76fb948ff03a1a42cd1a799dc0330ff0586aae32fe45238978d2db16629ff8751893e41e9ac72303d91de135313999dde4d93e881b0f1998ab87e5f8e7463261fe872b3ec4ab2344d26a982e286e5e7bfa8126ef4de16fc6107e1b077598e1347cc7b74d57565d4cd9b66e76f6faf51b247ada9672af011db71d48ce36bdc6fa234e6ccbba32a450f837a7180fce70b08a199e7e4c4bd3af39c6b3e78d56f300a45463ff04a55542b01b721229fb35a788769dffe8105171a0cde67cbd9f066834fd24b0ce4ac39a0ab5f96e3f24917385ecc635d7b8be5d9585a5d389316f1323a9916241ad9b490c7505701133451705ad712296bc4519aacf073fa7419a9a81470c315390d4e22820eb0dd0c9605132016f883b8a5e9b9b9e08cdca196abba7f78732280b0b93278f469cc7ba81dc6e764746ea2604d8ce78e301bcf2b9e638849a36fca9f9386f5acf8d9084594c5f20504ad382d4c083c5965f633248f20f1c373e6ae69719bd21355290f50ed84da142127b2c6b0a4cdd4ef4c753edce171d49438ebd31223e8a36f3219a3d6c60ca3a08f88f10bfae1e6a2a5391846ef4e6dae8442b17f7d9f727f47bcd0208185ff18474f1ca1b64580069e35e47c9bff3e421799220dc01eafe2122ba5faff63cd0f275c831e7933391fc180840e9bb5acb5357b196d045853398e93569b56732a637327aaba610de7a00fcb10410457e4493d532c99bb6e95786517add55467f06a23521b7e92be2dca54c9c3df2542384a82d27cfd02bb16e44a9d8c5f07f7e232b794dfbaa8bcd89c359054c188bf5ea5c251bb787282d86b0ec738283e16ed5dd7a74b03cf483fdf8a14a82cf47f4b04185edc4a2dbfd6356927322a15dbe4f35848e6f10eb983797f2886a266b31c0ddda9e2f45282d137f2e6031d2a756a56552a756dcaa24821e3a54fc3cf38c08feb31cd4e32a464d9399b10d7eef1bd627cab3f22775f4ff9d8d5d017ed0d0ad49dad13ea4d1d2cff663d9796b43998956d17bafd8fa49b934dee9b583fe62088b251919291e3b4ca1cb89b9cb035ad8179f2b60d096f96dc1efdd350e09ca32abdd88bc5bc283f0a3fb32588c87e37e2da427a469689c65152558e312536a2fd5edf9bcc19f25501cc9de0fc3df1a595b61ec856455d184f77619ebe89911e165d81597081f903e9bf69e1d51c6fc1880186a356157306c2ef2860d04cbeea0286e4f56d85cdf91cdc2029bb5d1b77debcce4886041e3ca2d6ffd2ec999e5f177418f21979f3135ff517364d99db378ab03df76febd0b2fcf72e7476956428ca20e4be0c63779b112a393a05c5d44d6dc8088dc57a9c0a5b0c5e2a41d9a265a400e62ccaf48aa478f929b354f2013e3287546dc8a811fc7964a50a790888ddc1814039eee62313ddbcf1c55154e386b011b36d8c74888669f334ff7adb1dd421d43b6223ac8beeee98ef1e54e6dfb4fa69ca8a321b3c2edd30143fc17806b04f8bfc403a55467be88cf8507d94f245ca59d1ee050f4312169250ac8ca1eab6eb00df7bccaea896a6e2cdfce521a404913df83bca8e699913b4cfaaf62d00b90eeb3e106eb4aafb7bda8d0dc5383d191d54a253982bb3885dd6afff5f0d85560ab129bb4b411af28740534edae48bc106ac43c3aac6528f48e059d8cf0cf870f9dc6bb669f2b43bc1b42f46a28d82c200717be88d4493572535d2663e7500d865bca452bb7540d163823e78302dbea5cdece7e72b84880423a18fdc1a080e0f0bdc7a58b04b8959ff6f67b224fe72ef22fbf6adf4812e550772fcc5949a157371f1def1a020d951c005140cde6c887040cd035dd972fc75b7b469070b61e1a442a78db4c74f482b950ac7aae40b009c2d6736e9dfeef0e9c9d718409063c57b082beb648fe8b41d3ecf3ded5cb24f7c20edb6ec753c4574a594b62edd81d4deb269b9cde7e2cd63d8d6da58736454e383415574b6f88b0c4dc158be230beb2a67fce06e7d8a70c554ebc79c2d40a31b1c19797000a8596a79e8ef11d87bf2922e8805c455a3da4c4ea2c22ef52ece8082708fc1dbed09872afa250f8351778548e576e97e4b3da023455f8db349fcdf8523f52a56c9b1f3a863652b11ce7cc619d6eef1611e97d7f94ad7dd65f54f88cf49d3ea4490fe76411dd3de5799174d1017b9f3017c2c3f8f30bcf28b68d7833b7a8fa46c3c3b346e1e2f55d680d22c7136f9de526427657ee167cdf90c90142ba705465ce94bb1803a1540b36cd8d22d6d9115c002f2ce96bbac79a573ea858cbb8977d9087f1e0063cea8c86a9671405c4fea89012b241d94a31b15ad36cf388ce3ebe924019aa3ed069bd07a24a46f7f818fda0d6463893621d6531541a57449eaf57dc09c9767a598444e07f79e2beb85362ea93ef04d37e5c4438c8093c026b3c042bf3cfdf11e5db84c05d7cd6bb090ee7686d87551a807fa47c07a84e9fb490f0531d38b86c344ae8b48aff790bedf407b71cc49440bb2300f9d9f73726daa89c7b3ade0b84323a6da6e7639652b004ddd08dcc03a7064866bda6b17ce8c003737a4c3416551a6fb779c414d4fdfcd3b29bd0daeb69c965f8395269019691e1552da684b06febd81d5f71b9bf095ffc581e6333b10f7fc4a3f365c0bce141b95a6fe580a4183713103cae76c776bbd29a8b26a3f2314609d1540eae73e43ba296d7576e2d8769bae7cf7518966b631bb3b215fa6a56b97ea96e116421ba669617ecae72e3aa186b23a289059c16fae6aee21ddcb669592e5068d84287be2d80a72642de4950366b346285b42fd89f49ba3002315c4cb76c12ca0f96b0eb13547e701831646ba663b0622eae281da69c699860728775e6f71ef3e63cc010a2eefe8d4dc3622232d8abc022fbdfb7821f02da20ffc938a7228d5a8eef8a9e4fcdc2ae68ff7ba6f8ff7e7e36fa40d35658e727554f696c4df6a45647bd661450a2404dba0b6021bc7a82df05b4076f86a7f33faa26195eedc2377158fdae5c4704456805c8458f4d643e356736c2378172d11c33dd73b0e760ca9eb5e12d707001955d3e6c85d427a472de77d6c1e28220c8d84eae5c4403484bb0d1b7d207c0c9ea476d2efd0babc5b577fb333bfbccc396471997de9d71b3c2624be1d155ad787635d4fee3f253e5b5f9cfec484cbdd510bad883b79381e8c608ce793cfe175ddcfb49ac6f2cb67474b415568ea90411f455b651c5c6890c94047d86f2c6ccfd787361d6ede1fa2ad89e6dc9fa796405d8927c5197e17e771173ca5ffe4af4864bf6a9ff10ae142ce2ebd664ab94ad37352f36be1afb259c7b8627849af46447ac05600ebc9eb636aa2e56c0c8540857595c114e4c1c45bd735bd73ddbe21823232e1db6ab4b985a681ed4ef505e6025d4d234086f4bd8b422e4e7e31e823bf5ec1d514a328e1f9ed98eb289de2a44229c66382ad64e3a1fddc548786c52c4d74e6e5dfe1e471c20a8bd6a90c1320318e74e7a1f3d7dd04eb81b37b8157db526327bc7bdaf16b181ef71d813588c2747039cd9c62f2afb253ac3a743d083ee53ad6828060b214e69b73b2064e5a01aca0ff1f5b30329ab5fe285193711f4401bfda2c89afbde31adaf1e0a1a9dedac7ae09650183f460f4a93b0e1f48728fa0c2b1b70c5a2ce4cb3d99627f9389d94aeb64e27054cc71b26f7f281874fbfe82ba74e609a2ac05ed5ffaa344fa14091cddf0c77e883a295d529916a16d06b4207e4a72074707ff4f17e9657b6f55d021bfd432de6ee526d26b4f70e5f8da02c23d43cd2b0ae674a573258df27b775db221d416cbab68084c3f5214b199e2fcd84705772984c92c8bcffe37950e8f3fab716f994765d0b09549201bb19ed09364880ed17bfaf8be10e842051f9f096ef864266593b6d97767b20a5530683c88dbda542095e9b57ce6e04b19a682652a4b72cfb17844a0f6a9a1a89f3f26ba56a05117d20f3bfaeee61d7deb85532ddb7d662163aa6386c91f40ffa00db6f4a6523b0b494330a932bc544629c294044fd0ac6049f285923b613bba81064f84ffa71a900fa9732023c8fdb0c480f3154d0dd815e9f2661b3ccf3da7c3127156e3e094041e365c97dcc6e74965a659034701b9961f9b755eff6066448f65601e9e44e12a7423d94027e4f118b5cb9f33bd762520afaecacd404c6dd59dd791c1bbc87277d5028596cb62ff14be1146ea78626e182a5beb492503b18d620543301161de533af3fc1f666727366f10c784e2f0a1bb5f5860b873f03f26b03707c2b8cdca494b08cc98c365009d22f3231c7eb2a24dd6cdfacd577ac334c2a07bbea2af22689fa35cc663013588419b5256fbd52538c9c5e708ffda77c0e97ced2e703ea5229d4eabdeaee8165e80d5867969269c0897bc45d06b96589eba66dad2f98aa72ee0aaa4aa88d6e4fdb0df504131909629eb4fec1de621e14f5445903716fce8049f89a0493607b11e596ce14c2e81ea0905922abd9c8601f558be28d8a409c360a279b86a2a3d09d8c422ef396979b9c3aac8e05b02975419213ac78dc677eb0b3a524ac0baa037012a97fbaade89b939f66d3cbee41e0c05c62b27fb0ae6bce02f7163da983ced2708c16b2351c1460131a9e922f1c1b6981c67faca4710346ed65a4ee56de725bd193bae5574ea91e104f660c4d502b7155eccd61fe4c5b819676b8727492768fad9d13fab5a240ebbb005741d5bbc215139e07be5bb73e3f6b4c4be9519e81c7cd088864c16e4650ac64418133650e26b9ef9020f55438acc9e7161b2c74bd172354ccc051e6c4a6897354bab543a7f742ce799a6e182b86839173acb03f39fdcd4a7637bb48d2e4baf031079687707612c006197ae598d335c463b6d79e0cc3bb7ecc278b9407a0d53381bf3cb65e78adf03a7dee07409b97d2df91413f04828aa2440049b9e8dc4fd907d879fe8480a239beedf8b729dd76042f50985db6761ac1f2e7f0cc48ccc7ba4d0634b0e816c8c68eff96832fbba350afa1107f2da7c53bb9ba8407c30e41da1278f31cbbcc394aafd6a1df76276e39a8d3c27c417753695a74e7252ddd27542b4bc2b0ab4cb001d01411d288749bfbc24ea8472e2906201655ee65d3f435f158d3295590eccb3e84b3f09e12db00382dceb8846fe155eb20580c20781619a894ec92d9a80a422a10b7ea440c4ea0bf3fbbebc89b2c11f7f3e858c16cb823e10203a957bc48959b1d5e3aa69afbb8a5ad1bf617ed59836a289dace4a5224ef9226a6f3d27f869292bfbbf3607f5aa807d294caa053a85a2f54d97f76adf509593bdf46054fac6e4a6b66f173a31d5eade9a38f5106a16704e80d61658ba3799b00919f87c0b02fc4f7c288c0252f46240efa9044d7458f6b92497321f696831565fca86c1c0bb72b4952102b777b466861d22f78dce75b8055dbe3d73168d41059715a23c9ed906e80b2353f32fd43e92d5ce90821bd9c6b4063125339b8f3a8df16ac4b1b0ef85cdbbc6f2acc15ad9e0aeb19bb0617f8623dc029abc232a67447b1ee4f6c4ce234c1ea467a20e8cd21a097f096855a75525c55a2b30c74ff8011476addeafcb18b64ea09600d7056fca53a12a1f89501d00dfcc81f74760fa26e081043ea648148b1ef1e4906e0a65154fde2c554b4c36e97de184dc9169ff3a326cf4a14708fe3c6466c37eed71c44143fd2d5e22443d1b61fe42fcf52207f17422a96b222a1c8ac8656fe98d7f9b5088a725bb3889ce24da112f2cd88575217ca6087cfa659374a82cd7cdb63b47c3979fcf094b62ff72fd4f0adf0750bb3e001ca7772f0733a5fd15e81aea1abd929df4cb195760cceed8d76b20bae92244c685b6a74be268c64a8960e1d6ec3edb9e70986b77eba84051c28900ee9b6c52d4cb6d67eaac2f5cc5bb79c12a5cd23a06f8605b492e28983443d245c963b81ddcba2a561957786a3698e2a0ccc21146a95ca4d7e4cfe16da4b4738a36c95d42f4a83217ebc7d5d1f17ddf5cf87f8ec8de65f0e69491686c973e69faaa179e52a828863797755deed4c1eed27d51a8ba25fb0821b33ffce69425d27ca2ce73c7eb9bb976f3be629c5608993eb49acf22e78c1002ef8d53ba36ad0b913887a105c0c5cf1d2561b5c9e3101925d758039f6d27ab42029d5ae10ca096b71e4cce05b7f8f3cad02f08b6e2148a3cb5f12f5577f52d118ea055b47b136da35283cbc6ab9570d61b54af491665d9bd141c2a11eecad22b00429b8c5d7ca9c94907429da625315826e99f3e61537a00b554228975cb593bdca2b28c1b022e8f4e6b61694fa934fe35501633bb8736021a08f58deb6d3d462fe00b7e9b5ccb7e2f065003b16d0e54c66a9c9d33966135e410aa0bf48f59949771ebb1d38b3902865fc309e7c25bb5b4b7de8611ffe178877c31a8d1b191dbdeed9a2348fff1b6217553bd30d3d9b7eccbf64b872b26aa811199c76915ba43c610bf4169d8ffe09eafc1b0a4eccbb64a031872ab1b3e7a9b9d9cf1e3ed1a1b6a5b4a32ab67edab8fd693360c62c9f34b00dabe47cf1e8428e28d1202e556160f0d4b6ab524107f5ebce2a4782061503cab2a1e1aebfdfa22edd4536dd051a860e9788a5a4691b243893ea6b8f647cd9094b643b9354a600591cbda3d762e7dba265b9c8e6c338151709322a51d4389431047afa1031d18aa0bfeff5d1bc28c5e013eef0a26a7f1eb3c4dbb12a215882897a65608fc3da16a6de1ee7349d9853f6faaed5fbd974fd051627ed762f74341c6ceb06d4d4d635f599aca02471ea5e3dd5012cae344abdc3f990e62fc07aa325757d1bb2ba0bd7833bbfd1ad4aabe86cd389afffab65c73df538d6f9b2da50b9ce1b1be4835f85f2d77a01594d35f48b370b0b11516e8913aef45196a24b290c7491ef39a3a6afd3790b93214837c3247e76ee41a4bc1539caa78adbc5b49d471a9a1724e62c5192ddfca31882350dd906560cb257c3582c4f294193dee760a15b35c9b746c690a4728acce6339496aeb75c2e350ec68acd49683d23140feadc2dc3eb118a8e87281c60a18d22fd12998c4c3c30fa76f9c76d1a994cef1dde10e4b5554e4e4bb0d164e3b85e5ce16cac42403d3b2c687a9ac0b8813a5a2ff6fdfae0c41d9bd4da4f2dad84a309ed3e6f353e9b29cdc9bcfc0c2ea73364554f5f9100b9a01e55fb3d1cd857c9f42378a3ed6f32d87a9cfc4c8366d6a28297128226b6c31612f9b6c1deb481dc930c417f64eb53cf74abc5723375e6370498817273981af928e9d64c2e2c1f7aa46039f2bea921ee5505cdf50f5c18d0bcb6f4729936e9a0ac4cdd2ed63138e68ff225a93b21279722f0174dbdd83b7fc3f6e54f602107c099f18d31fb5d682345858d154475ec38820fb3f9e7d340e9757854944aabd9202d4154b3ae6996828474f0cf82d9162c29706a455253e2b7a236b7c54b7deaec10ac95d71c93f7ae57751c75a98a59be69628454cbc0632ccb25faa8108de381e12cb18758648ff42225d26cb7c3c78745b0fbd371480f58dbae1e32da2f5edd0b487a6cdc0200536c3a45533e91b3241f2d19b008de02891276acf3194deef6b28133da6b7aab644ae69e0d310cb29c9b100eccf9cc2aa140d718ae5a7bb03895ba915f2ed39a681152c6567390465f33d6addfed145bdff55795af7fda6bebea3c98f9b4d0f9538c9513d80c39369506638ac267bd2afbb0d0abe3c44715bae6a8f2fec7bf3178a5c8821c5a6b32692f13153c364ce41a6e6e9201b733bf8fef31d33d058af4891138acd31b38ed8dec427b1f5b29455c4721bc1b69a9fe0c588b134831f57c64fca00fce1b582042bf68c8d4f05e27c685c81677ab6331a084fa16f6df88a6a6c161d4a2043ec2e2586bfa0aff858793f41cf2003092e55205ccd9084422d53245ee37aa8f16604944051fd787754eef613a5b2a0893e0016fd00e7ea3b13c6f6a7f22ef4346790b5f2d2c0482eca4f59441d488edf51a5e71655f2c6a7e6f348e8f364ddce5a57e0252a6ad7dc6170ecd50b267673d3054b53f03bab834de4ff37dfb731ea2a2d678e6791c508b838bfa9f274a8ecf5f499ebd356976e989cdf7f25010cf28169a56ac2b2664bde64611273af5b475546b43056f436845c7987a986150bae9121485ad36d2991e5bb14015bb360a04d989dab9615140841fc55e6cdaf73c914120fc6fd8c1106d75305bd1ff6fff2318ba444caab42268716d5c12dd5afd97abc3a048f3feda20622c1f16061f4ded6ee023bd1fa87496081c08f4dc84d946cf0ed270122b6c36da77690db383187a0270e5e9dc2c7b7f13a6548dbff4a462424973e424ca4f16ee07956527336d26d86a3810b4747912d0d72b66ae8c5cb58c500f6d48c07479d74ad29cb2107d3bc2a0c67ccf82af7e19734902b3f1092a515f71deff0c98babdf0c6a06104c0fd996567bcb0d4970bffce62889c6847316bea599d7a2f35a19adaa500a0aa8c8f50bc44f80b4a0a0f2607a8e78dbe95fac49831e0d54c57b415bce00047d12b16c50c511e96ebb39271d85653edc76f3099effd558bd90e7b8fd0a5fa50af4e424c37c9ef5e907051e61b08ddfe49cb318c37dd5978d0f11672efdbee14949ebd178af583860979deb98354bbe911582b6b4b22aedc7ad1b9e25f4dc500362ec7531789e5b84420d8abc72778dbdedb38ccc1e9aebedc8aa345a96e6af55b57e612d7438aeb0442f5bdaf696a072b72300930c6321bb3f9f0a6d4e42d66df2f3207822cd8758cf349ac1d291a474136dd7506a5d65446f7fe6d8abd942ccc84e93bb12f705d92cdc51a287ff98fb45b4a08f89283b133c14bf1840037118a5d518fdd4fa8c9e49d94d61959db5e8d90220d531efba57910110de3585b4ee4ebd64f89c745ab9d713604092aeb735683dded3de2da3af777371e6c678dae6c86ce8a28ad22cf02c2884987c2f61b2fc764eca2e3f515c35e6697f74243d3a2cf2f9cdf3d3c9cd116b8aeed884d3ecf7da0c1ad282c561f17d59ff9991ff1e31631b5360493f01cfee17f40cc18cc4cc77ff85f8762b6c8b19618f7a916d8caf1e3f3010e8452e1350c0091cc4bc5e2e303a9c3103789c534b511dcc56f895508d1103cede5da804a021cbfc9b0a23025ee40d9f23f03e1c3cdc1152adc9d5fbb394e6ae07202cfc61ba4b2186d88d13ed722afa5543aaca9bbccbf8d972cfceb33a4410947082a56a2132cfabec36e3fe9b18f3a88793e5e64dfa8b61bebcbb952d2c3dfde8e54f7399446e61c4c481f4d25c168b65234483f36daa99bf034542d3354ea93bed1f3770570f503e5e59de2a8d3c61751f4a45d52ee887390a7bf2821219aef4f1fc2746e30decff269ad83b7dec01278f4952c759efdd02e59e642ad22cbcf1819a199ade65d76d75123b011a29b807cfe988eb2153b1cb81a9f13a7b23ee5f3372a97b111d59760a3fc8e2bd06a775553f7b7ebec7fd0e054a00a9eaf46a6310393ee387698ae80d180742c42ebba50ac3a3c615a84d9f6d1077905dacfaa7324ba6f94e88df6ab6898780b2809af5e8d630bc5132d1dc8e0b741ae663a90588d92676b261994c2af2cf4747a8314fb022b0d76f74a518de290376bde67b0156c880a8208b2fd5d22992e6978aa2425865354c441eb12d8c1214afe5531b64920096257a6c439504b8e6d15c5e8abd7701df50b15b8068e43472dcff88c800bef997a76bcb9e6f120d9bc7b302d40685f30c067c68c2db4ee3ffd1d7f146baffa2a9935a07a6136a237d3808ffd06c69f40cff61573fbe36e2fade8bed56a833f86d", 0x2000, &(0x7f00000008c0)={0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, &(0x7f0000000340)={0x18}, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}) r2 = openat(0xffffffffffffff9c, &(0x7f0000000040)='./file0\x00', 0x185d42, 0x0) write$FUSE_STATFS(r2, &(0x7f0000000200)={0x60}, 0x60) syz_fuse_handle_req(r0, &(0x7f000000e3c0)="7219fa4736347448f0d1f962fdeaaa2f4e9565d9ba0765be302453af50403a86eb40b21bcbd77bf4c283a6bcd479ac2c234ae7a215c9e5764af76829b9c3d50f5f5c7b6c2390df2b003da1a236837357a9774f3870ba1f0d15b06453e65ec7356f9d694fd1d082bb765691c94cd946601128d3e84bdfac4e7a29261a1b028e5428bd784a1bf2d319d4369331b66b6ac77f295881bc717a69897708f4d9eaf8b02a6679b81fe53503714d30e10dead1b02c2c73af47ecbcc2d8afa86b152e059f632bd6f7d86f180d7775dd3dbb3928733b20d0b8e568ee0ccf0c7c94006592817140a80384112ef5a2555dff2ae77173df629e420104000076ef2353c02511a910e05b3dfeee214754b2c0a169bf94a78a503e89ee164571056973c56a9c95d4e934506292254d0402d978279d96bf35fa53a6345cf7ac3914a0d1c3f06b1cb9f0427d0c2d42ee4a81833489843975ff4d2e9d44dbfbd6082589d0baf183123cc821b981bf5ce4576655094e5c4ecfacd9608194fea94bf0da31e3610509c215a4cd490ddad06c0bb5c9a1779eda18b6ed5b9c761931ebb4f220776bfa7ba359650c38a6628dcfded61c8267d1590c8a6726a4039a2e7b83a1380197ab04e49f11ac215c4458fc92ae773ce33a3f058da0366e4ab24d2d9cba0fcea8a29491cdb25ef21efe9dc233323b07576e630ab3abb58c1570598d1c7739680247f855b8d4ec1a3997e6b2a04bc9a65c1c11fb7594504d503d4f1a79a6fc5b15c76f54681cb8acb1efe7bdd30470f2fdc95e1fb758267644d2831f51792bfd2cda17008a94cb1dcf7eb84297ce9b8bade982234b12be0b01523078483817ad574333a0e8184876d3794f44c7da1eeccea59bb261d12efa7389251b147cba04598f97d4baec8b7b4c6b799e0d7481eeb7dbb235e65f8b6f5ed6bf46b6021df25b3b73e9771269c7bf06f95debf193c2adee6ed34dd1b545a861819ae58e3b7069c6988f7c28d17676d41ceaf1d932024e70f264f5c7e5956c3bf0a677bcd59158e5c9942d4a1981893c866602d24d4185130c5b11f70be0ae8f79074baa3a2fe0426614351a256dacfaa55cfe6aa71a76ed18a882e5479c622653a98a50f435bb8b22b05ea16a4726c0555d92ef843a174fefe39088ec71911adef38ddf8005f3635bdf91f7002afa560179c1a7d62b28144c8bdfed330d3efc79ddb887f1ee4bd3fa2c342b6dfc0af07377cdfbf9b91616d8da2b3857d165e9bec14a304ee4566a3b709b9621918d99d6291deef4e1a1f04ecdcf0d92c0d84417b2b2ae4545de22f76c2528dd979ca1c40ac83a37a77794b07337a6b0aea2bbdd028275c24db33001aa9c6e8a37040546d9013a9889cdb8950169dcaa657420200dc523bd940757330709c210f26f3ca8fc5c405d4d3033fd7f8188e6909abb283b582349b83b01b766c11d2fb1433c5f57dd682da1013a4ff17c5cbf2907db7629fd376b3ec67bd1b7ba2f06a3e0bb23e658018dd76ffa90af51940fb5fa73edf117a2bd2ddcabe0bd96ef7a0b702fdc1125c9e6d873566e0f8b4684159a54e41df0fb0fd972216a045fcc086da525ae1929812d4e0b5dce70c08479be39590aed1ec9560e80856a40f7e4e408c14ca791c5bb234cadb58af2c8c20d666311b828a349ec21bcb9f1d9629b2a623e9086af804e3af32f6046437ee434dee9cd1a0d42e0e78eebab35988b7f1c8327f200a5dca16290f34fe3637bca69fec029205a55bb3ff218648c4f31f558f7d1eebe2d8146117470ba8d1a6794326fc92e835eff7a33b988a41c7492eb4fa6969419142dece6f7a7a9d404387762d813c4d744e619d896689ac9cb194dd235fe24c567033039b9afb9dfc77f9fc473dfd0629aa22d92e5bc388ebdfa6b1599f281daf0c464e34340e907f2b4a1cf289ae93628bc60f9c71ada6aa32ab1b4301040b1e387971686c68bc9eceaa6686b93f8ce396a1db7e8d92d0e2c122bcc9f7e8eb79cdca3036d5d6f69fac8e45576229f40357146c016af09951ce9c9ec08bd658a7ad0797414360844d0c795a9695fb76e3e36723d85c6298c7b6eebe03ecf5d44e7083b99fda4c38660d0e250816de5b44ad52b85b9fb2ec07ef99d5cf69797533e494a9de1e266315c5dc4b5303be9a171dcc78bf0976726b342442bcf118e384c993621ab4d3817541a4299f26274969b8aef3a9a27a9537073c2af67dd599ed87e7ea2a54efdde32a8c4b247561e318a8bc0c54111e3c1e88a909133b087cdbedb007bc318bab81046e1fbb0551bbc33130e1d1e44f74fc90fe3531265f9411490e902fa016acce6ffe9dabb0b866aaf1af3d6dd019843831bf04a4826b6df273af7f527e36adc5fc122e0c6136c80ce3e9ad0e0183e2dffe942efc5a6feb166fe581e346c1e1921626ede875ca2827b76e053e735a00da39dcf034e8f0ed197c064c048e3949a4dffe8aa1998d94b63b15e491a830f037d45b5eb11ce15777906f877336e852088400604bf084fc0f688356b5a9ad44094f88827f3c1c29821bf16baba51deaaa4977622159c2b9b7a2d80c50d5682d1a2d337c6c0e56219733dec802de90b0ccf3bddc07090feb4f394be70bb0adb4d102700bb8436144cb3d09c3535fb9efd287dbcff5b6233e6cc380eb90367352e4afc968892456f30e91ff906c4c818fc874072bb66d73c3d272e69806a94cb35e634d21fd8dfd0ee6de054ad8696e15fc222e064291988518155cdddb25f7228d7cbd6bcd347ed5c453221de10c92030e1a1b96b8aafdd266dc6f71f390ed7c143d2169feec70d850a138c661972ff8df74a053b96475e473bb4784d9a75f1c1ac78cc8728a84f762806b4cca78aec0acc629a2c0db10e4ae8c0c60e273c04a10a522d0fc12592ca9070fd4aa263dea5072aa1f286aa2f00cf94fc9b81e4de59199077b5f272e113a3b6c77e6ad0dce3a28524b934a699adef9ec2a67b5baa89056d97d35807e43dfd3e329f53223c38abd5dc31f66dd785287a5c8dcd9d2151406ca88c10e99a807f035ab9063c7e8a488c9588ea07db0bbad959932e6d1c89704af0d999c07615bca6d10fcf6873fddeaae71975f6115b792ea595be6a57c9ea52b41314b1e6472c82d091f66c18836eb8c68711ef042070545040220819e940c5f4ccd083f0f2b757c8f221a3dbbec12cacd2aa7531bda0fde96967b1b683a9e8944d624d26858233aa9f3104515182ce59929b94291eb5c2d695e4e6b7ecf30e5160d30c62744940defa7b455625047830b46b64a70e4070c3e47f42708242d62df081947cc7c13454447f167f2b59013a914eccbd44c40200e10279d45a2858703587491d13b3e816f515017b33ca0c7157dca8c8dac532aa8d392762d03034fccff3b906f8453e3517deab48c6e8b78fbd283c8515ad00c96810890d205d8052566d4d204f48a759877d3979ebc54d0b606a98746aa97a178c19abb68325de656b508a42c42c1664db915c687f47a75210764898b2803a3bd3f82c9a6280044059cc801fee406a5a14093b05a12ab3815ba40cc1182020d83386ecd8c1f2944b85b27b639f9df5aa7000481178a5894cbe66ea9ea8da50115cffa32c281c598b2dda88f16f51d7a1e75e0417988ead7adc10b033d03a41601709530799f81b171f7b79eab121ccd7dd577fd068cc4712c437dfdcb77b3981efb970d72ca32589633a9e42e54a79cea76bef83a0bcc3847ee6959405d37af73d3219a28685f71b337c6f72584bc37c4cf018cc69fad226827a22b9d58d41dab6fcbc056257606d8130094f29cc747f3338ec6cb0a6813986fc07fa10ee0b4dd4e228c27f585c2163674fd671a8dc1a6aaf56e3615802105cd827106b3e88a33179b3ada9ecef3362f910c818b6dbf4420f76b6e3ef168d2a60a88cdac79afd888125c475eb1a8d1b1b1a217ebff12fa89bf9eab76bdaaec17bc3d7dccd428a68db5812fbcb5a9d606f4c32ca2aaae107c817279be1e3e09c1cdea961c3a117c3f077ee575e82794a5f01a3ea28033381bae411c9c6a4edc294ad368bae0b363e8f0d027950619474115e655feb26d8b2f30bc159fbfcb824f863bcf7a8210eb38e22db77af0e24588a490add45b2747383883fa7feb5ab8797247db2c90fa8fc8e609b0e4028c2a817f6e97b09e18559cd7be75e6492f2bb4dee4e132ccc5681ad0d46950816b7c0d0191aaef8040062d55e5b8d8ccab4fd0c2f2a9ba3526953921126149554d10315de2055a974a081ddc27996607bad5b9e7f2676187f4304cb1d971363416cfb7881f8d48121217bc1fb118ac2f77af8b39084cbf8d67e4953527d1096d145fe4bbe8703f2321e1bc543d859a21d6a13a808ffb305657dd9336279a79f213dad1d3bcce9cc1eb520fef519180bdfde1e57211ac30a0036b96e93a6045d122aa03ef74cd480597c3787a086a8039d1ffa5fb0073faffc82d7561f34deb2862992ade9d30dce49086db8a5bb6a2529ea3408bd19441fa5c97ec68a2237c316d4270181d59e7fa0ec007b5fc9685552ecfa88f4ae65b48bd13fc9a4a78a84eef52c5a90d4988cfa74c17031ae03588d949d56641fed28f042337c78e4e084a8fd316c7e88755f209e596c5e7b21e7bcd74c26cfb4ad96832b9c3de224d1f7cdfdde65eea9f2ea98b27cf138cd3d959cc869027291e6dfcff604a3847b69e6e35be24789012da813402e9f37b3d512a62d1e255c29c68b956398ce73ecc449d58064247120b58efaa78d50e94568bd2d4c9d56a9159483caa63746c36b0432abfafa38799fd9b53aa9d2b3584b11de0bd3a56315d41a160ac1578f999c5102a0fe8f47917a200091034aef7eba15c293234671564b96aee60df9e5a6fd19ed9f744a36aca8414852278463d753e8dcb1d968d4380c84aab6df7b0d7ed819c9eac6fe59ed53998c8d3dc44a8bfda2873c13ee9016877db99bae02e44ca95d117de51fe66042659f9d63c5bcbb20e3962f2f9555e9315284071c2dba086dbb49a964ef43104abe8f1bdcf81825418963ea894accb301d5be4019608938cdd6544c5d99821c218aebe031cb62ff1107349be067127125a57f1267d33fc64c492ae4aa43fd45b1d33b2b17415a48094d40f7311fe44be73834d1ff73aae7fda9aa2a29c41f4e7e97b5a4456833574d2dfcad90ae8abd4598af3483fc243068e1e2240a1f64eb18c64c3526869a68f33f6f6db3a79746448097686a37ad68265a36ff4141813e4017b564070ceefebf08f9cbbdcc6b506fb3427e0c951809dcb1fa06511760210c8ddd26ee661c9426dbb7e9e526ae602c03960e6594e47e6ab029b1cfc0d7642456c7c20867a8a0b6ce87fbb1eedd00a5610b691b2a4fdef3e3f96b5631172b88b1f37107988c8370c30e36a4ece3f176ff49605aa69cbfb0c6775817e3daa04c8ed033028a91373b2663e9eab3fda20a497b2d14ad4447e095b032cd4de59ae784c51e6cd332bbe833050230d012b1f2475666c854247f19011b3dd5970d8d3dd1d1e74ef0ab7825934573932b37b1345d66aba8e9edaec13411578fd7388ceaeeabf0622334d7067b8710422f7b8eb2a45cb0cdf5f9872d3d14efd2d818b8fcd37b3ff5bb21f2d1e388839d97ea97d2c3e15c9b4dd05a03f2a1f4c6f6450b2925edeb50c0ee631bbbbdceacb52c343b23989f7d7e00b8e6297cb5792cb7299117949a5854129f932c444cf7401723fad23dd4bced0da5baa36dfc45e89a8541eeb432ee7f01a3c6cf94d2d42b6924b03267d2ed1516659d3aadd534fdda378b028d8724a5329a6237038b46a7fa621d052a7e35e7d63b954ca34908d1144007aae6def3d069652a76c5e0c8233617ed6c8be24c26db9f7732dc6af173e05d6f8163335ee07966087ceba488a24a0f62fc12ea47d728794e79e0a20c1648583b203e98770be9feb6f5d0f2bea1495e326a0012c3a2ea8021315f31533f752c61edd073f1283e03d46d34460eb623fff130a57ab2a0a21f9c7c0eb147bce5692f886827c4cea51d87ff9f31a250b38ba4d95a71e874f05744fddfc7ed11a045fb8858be2618e6f4f75696305c1173fca9297fffd105bd38faca2c858d797e573baf3645e0abeccdaeb36f2bc8b1380a38846cc0c80789de54c1d6e6ea344c75b18e58563909a93c41542493fbe25d063a2110f21b08239c4b8be9d24b1e0b1eb9e5c832e5de878d091c475537e6d1baa11214020842ae5c4824e11c11df4ebec8e0dd937ad9aa4c6285688157d465575db9e2bedafba02a2c80d502886343969e322f1575d90f64a0b163ca560ab853a1b64d5246bc53c99466289d3fa43c31e2f8886ce6f55dd2b327338f0266f16774b85498c815a75805efab0add1c4361d1c217f36b5e18c8b2e1efa2dd7f6d1ac695331111b17d665299572f09dbdd9e7950cabc951c4cf7d2cc0e22f6699f53e9573826b420a013310c45690874c96fd0256875baf3f88f1c824eca1c7811501b1d0bd292b105efbf4fa735210ebc62302670bd80b66aa499118f839b17698898492dd6d439c29066bd0a9ebfb30bef1ecebc69472ea8b7c98fd8e012634206f1f6b98420f383413177188d3ed26c13a8564502820ae6752cddf7b6477a04fef130b3caa8913e4787105a9c7e310bf059ea4006630c9603612f0b1caa83c5609cc8b165fc4b14a4b044fa6b9b6b4ac0fe88954022af217e3f5a46f0c075bb2a9d6edad593c295d40490912403e3c461e9d8ecb379427bb0d4f09433ac282ba55ee4ac5fcb94d866429284fcb826d7a93a052eab1dfab0345b238b15d053390f0879638e5f7f9d6e2831fe62626b950141b9cb2a4ef32475816653541f2b74baa0759f1b155d12940b2a34958702e140d98445d0a038cf8cef5f814a86d599613c8a975832710eafa278d97c943c5c6410f00854eeba2ebae6fded67af33b0b5189dcd8d6e0567a282f614655a90bb7eb6283c9a2f0dc132f5a0a2e13e76dca49815170d090be93b3603c3e1ea94efb58d4986ecd452ce7f9caba3567fdc38451269dd5c0f87a9e18f4b01573bb6a27f4665fb964384d91ec1f89a32526d26ecd2128a9e83d10c6aa2217658cf0f34840a7b0255ae3d0ff85a6c11e9f9683a211acb96c6ae196ca830aaf21d97efbec9d88ef92139daf87818a55ddb07717a79608857746770c3449a83c0caba0d841c0791e64a84bd5150955bc101c853d30ab995529340f54b29652d703071628d457db8690b792e25c476fbcd1215f51ca8d60c9556821e9e2125468e8b25637412b206472d757f69e07cb19acfe5338f46bb4917bd748ece5fc62c66f5db79a380da8112888167948325d0c031dd6be1d79bc2facf4b34fc80829dd5c4effbd90ccb08d397c474b0824cc5865ef9531c88ffba1f5a2696e2343da74963098acc5614ced2248bb83f7371672b14bb7ebd9376ffe91c8ac7c50a95da85d804be81cf4218150ca96a4739489ad7bed2d40e26b5bd45aae6ed859608b509901a0559930c5bd2fad3451dced73cc79da05d505b9189f3f66d4d7fa8bc1311f84751317802f6c97a2489ee029fe17481407638228ae266790d199256e12780c5e48db4bde2a548cbd6bba52019f9611c589c08eb2a2a17349f51956757fbf78539ed9e57ad04b8b2513352fa44b15c5fde5e737d8c1594a6ac12ed91127a13fc3b7b35d000877365b098034fc519818521503443f67a9c28e593fc9fae59664833beacba5be1939b071ac1ebdf03e75b99885d159763600509d22453fb26421b9a56b72c79080e0e155450c9312a0ef996b940e5f3e25c4129f25ac16a86cc86a476fc74bcb29a19294bfabbaa38bbc44ee16219e559251f1892a57d3c0b7cc252c28a9b703baa19fcb46d2241ac0c886d524a6bfde9b8e2827c26ac19d994035342dc96c08d20377a476c41a1564663666d3e048b8c954d4c30f391241539439074fa429d8c3715b71c11ecc2f210792e1fafcf89796cf7e54264d6cb0c17f80c1766e079234c500e97c9ad0db4d6fef7b366ffdf057920231478ed7e057b166c627a7a0e725f1864fd6382edd47cdc500f86ee66531ab35afbc1687c354af2e8ae95b1fb5f8516560a58729b7b6c7b3d506682c7f03716b9a53ce7326d8e0dbf0d9b0f1bde90d68472b3a10495f5284f2a9c737590c6839ce3b417f59720ea733a3a1b66066adda9be767f922bb7a9f1864d9836b681e54e25cc7c5880fcabc027ee2e21b8f1ea94c915f243c36a75156f4a89569096d0b0dfe9aac98b1015123aa95f39d00e439ac1f0971345ed4f8110d65296aaa9aaff4051011c272e4a21e73d801ca0993eb893693c2bfbd40c189f9baf00e3371e023cb21aa2cb832b7e87b2bb2b5c733f3c02103c1392a9b7555c73f86a6c19b99e8e4086c11ead1d50292c69f6a97f9da9111717cff287bb8ca585055d75ec6c32f65444a96e99606905cc6894af1ff06f001bdb62dd52a38ef199bfdb12932567eb72b06d9301a568dca814877fa388490c9f81988ecd6d6b338a2724b0853ce87104c61c179231a484fb9dfae9f5761ba0337930761d413aa87d3096032e4f71a55e25d9f873eb689d40a879ca5188001011ac803fdc95331d3d859182bdfbbcb81c101886de05cbcd9cc392659eac2500a81ad4d785a7cf531f9d428f123836f5835a1edfcb92c67e84920530c4d2f6f9fbfc39d8eb7d2c840122da42bfb2d15d11a647a7bd27cea23a0bebaafd34d36f5ef4c7ae53f17dc9f2b0a5e33ef5bb63ae2a15a795fcfa31f333858aa494010acfe2dc0781138b8e2db7f58bf7cbce9da33b2c0836183087e72292948ba38943e31637bae8c77f18d455e100a70433d3d7e7e779d65fbbf5d112e32863a2bd31997f644491f858cfdb881900a0c69dc1f91e8714a43ad0e6ad999a84c8e93a4bf3f29a98f4e3402a7262f0159c5072dd09b0af7b6806f0d05a788f1c19855aca18f9a14674b03ccf200799b1e00b2e3cf7431a0f4c9ca3ce2d58642258416e705920a60eae2d306841125358e83b8fd9179eb2f4c1f8e10a6f86a3ac73bbf7ac751685d689bd181316bb49861512f7c375537c3683aca51ab222dacc2c537be6505469b21dd396182c919b817bad13bc1a2880d7c4662b27292b80b426d9b7acfbc26f03f7170cd18489de2e35a3d4530ceb090b52a2fbc80f4a578fcaaf5f38d9ce3601144eb7cb36e806c9b38de03c5e86e2bae5674f32d400b1553fe407440fea7990312bbc2eed3b7ffde10130fdb85a9d1262e2228438d231999e49d8b4d8c8100ecf31df55ec0b0f86f1fae08e8f9d6034f85ee80d9307110f060c518eb86b8e021ef7f7898f368b23418170cd7a868ca3ebdd8de4e3a7873c392917cebd90d1e77cb8cf2ef65209e95e41b372377538394052b12b053cfb49cf04dcc3524815d036fba1fce46155d24f0ff9c1f25b58bc8f859b0f1622096ff69359cbb6cae2a044a597c8e90c97f669db48b7e9a133dcbef63a2ea1adbcd7eeff057e94ba4bc46bc193ed5cce3a0719a23b95bd95916489b9a2012c9cd04f46c3f5887e27fceaea8c16429b0c70df2176f428e3f0f2d7229303fd86fd3f31253436ac633141e279e3f04bfb47b66e25920f8d2c5daf6273c62391e30cffe094611f25ed714f3b2e5d28656ce77bef05d1472600b8c6787e9f9a2a7a3ec4a5c75749fc7876bd637507b81439df28759fe56461daedc89c735eefc5feb3094cdfca1e9c44ad696cfda82703d6ea11ec44a576214d9f7dc891d6d2d3998da665d10e2c1c807d248df651989a41e1e57402c37ed626cbfbd7ca21a35757ae7a4e739583aafec17b60554066a63d521a4c8906e0f56f85f73b0466fed9365966b89c778975e751e3453017de75bd7ac55a89e3c1fe5f9e29d16818344ee40943518cef2cf8add1ab4cad10cfb5f9ef1224cc7c46a12d99d91fc5b7b86abd825dc548d394c8bffc1d8372a40fb011421767b1fcf99dd78a5a6d632e09c902a74278de288a279afee23940a2fbc7663619eae9a0b4c221b6819a93be27d7c4a5c14a2606e695decbefaf7e4852280ab69c4a87823cb04caa4bbd15ca479c1b7eef13ef3016901e08da041b7040f0f5fc6b64eaf12c00bec8e63b9e974671dc8bc3d9fd5374a800a28b88d718c8cdb4281d44c506068a048e112b9e0658a4ebd099500205e276cdb05b3162ed6324c8242901da16806137e2a523e8927a90be0b10ab1e708299c49e7c4944eec5408ca990dcf0d5b7dc2713571f407ae6e35181cd0d705a1abda0bdd82f5b3b1419b039db926086b11e54068d3bd2481fe5d8025e09b72548fd6c10391ec45c7fa2765578c6a0918b7d6af2d8dc79acd2b05ecd190667b77a8d57234fc62ff61b66983daf5c1a19bd47bc2b626cf2e3a3276436855faede2832e91ea16b26a900c3e43584e2c01b2ec986d0a212428146d9254ae7c27fbe2e9fe18d8dc5a0061542e4d1ec14a6febd43eecd6a4ecb3f0223fdf5dcffc509161a720d041598c6fcb359577bc8ab447a7561c71b0a287242430b78cde49c0e037e01c2f28633571a9284134539356766bc63964ccf9051b361d7d17008cbf9b2c40ea04fa3cb0f96517acff755509592d03841660d2016c25ecd330e62ea1df2385a4ba04e71d91428c437f5cfd1ee3040899b94a351ff936bc72b874f28e330afe0cf66e37c39ef5c38f34fe70f981bb883634b3e84c336b5fbdc0d153e2a0673ce4d3709f35822902a2428a3ea29b6d92b81f4b7de6345ff70dc8e3b4c47126b186878107cc2999c16765b52dcf48056ccc23d6623df14be4542facdb654e3edc5a35315b65132571b3db199be785b062a3cfbf0f3aacf18ea274aca3c30265741d006abf0c706695a16dfc5a079cb38d0f3a897d3c09ec1581aa1a1ce91da5840507699537b9a4df9a8c25566d8bf4f294d8007517af43610732734694cf884c53e9b6840d042a85d42355bf9f8fa718df4dbed3a118172dc3da9f4a8c53d9272c4c93e26e8e47686ea77d469f0a8f7c76b773f54ca7dfff85e87f8d5b464fef0e4cdf791b4235b8ff02c6266a845679286f34f76f7c9ad67489f6e589231df5600ac902c4903c25e8cb9fdebf6062d87266d7883d93b7411f73298fd04e6569704b150f3f37df6384b6feec2fd656671a6a44b589ba7729f7580127825f2ec6605e002c3a2818a13bd089b5e42d14ee09e7fcdc288019125344319513906b32979032ae70e116855998365e4fa77e282a43cf98f93ef6aa0e0768ea4c8acb556725fcf41d48383f6ddfd62bdfc5b6028e362b91b9954c098e16a42139478a0ddb612210d67bdd808fd88cd33268fe652308c66a742f4409d3a42fb6510136c7f910a73b437c4daca57065538223a9e5a8dcef1b0682befef54cf13e36d6faab9b9f2aa976f5c01133d97bd5f3b71c7943db45e494416fb2d00f8f85b196d5307e22abe5e0d48447d5f9df003ea626921bc0dcca7eea8d1f56defa31bdd2f61792774de51970200ab06c703862d446ff22ca7024f865f4421c09b97d2f2ad4636d88a208448f8e065ee5c8fab93dd765000", 0x2000, &(0x7f0000000a00)={0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, &(0x7f0000000300)={0x18, 0x0, 0x0, {0x2}}, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}) syz_fuse_handle_req(r0, &(0x7f000000a380)="1889e1625e95eb60b81451ac8e88770e9c6915888c0a4dd7088b7cc0abcc77d43121799253fd56de16818e5c727e4f6254cc09a6fe59299068c07cf463bc0c363b50e42870f35f18505a8068e037f6a599bde2bf99e6fc03d67e952593f436717379e29cd556b1e1fa8f58071809763a2114725d528c1bff3ed55ff1e6f9496bc6692322cde7054e2785f74e47072e9871a95d107c054d33f1630edba16c59ee24d0430593cc918566799d74c5183f601be4fb2b227e4f0684a7044dfea1d724fd40c3ebeaa644e52c3139b6ac925775a27edfc71a7d51c2901e5173a08ddd4332b2ad90e730d586e5bd54600b9c2320d22c269c12926826ca32542576be6b7f4caa556a48223313961b02f836ff4f6b926acfd13e374047fc1aa59538e0832ddb7b9efd2b53a1afc39d8c345deb89581c4e6e86f5e1842a9108ff1f0ca26a896c596cab32a366fdb026881894fd3f1709ea6155b0d809755448e46b16edd342dea12c361e8df41d35ad8bc5b61b0fb0b53aeae91a9106f9644e9744ef9bec69f306d475c13af47bf6acdc0ef34722edcaec82d1bc7c4f350b161534c69db182d1388dbe14f013234c2ea1e95ce6f65c4ea8bea4e36da6118b12f672e85805265ecfd4b142143de8ec19aac8225730975755c311df9d0f3b80020576fe50e1f7b5277c7da314c044150ac097fa7198594f6142e84dd958a302ec69c1ba51b5680eb95a38cd87cbf6a75db8ec3912cce3521cbdc956c39f44547d42e7ccb38d5bad937caa379dfca870bb7e5b9c6176e714c6895b95c2a7c8368e76a10e275849f242ccd2e49fc02ed0f060723bf37ad7211857fa4bda8723f696c5d2961b1c57a1eb4dbfea9b39c289a6f573f38efc70acf329b9406c64fca8b16d37922eef41d12fcd3de771701d7bf2ab09c33efd4135fdacd3ceebca5c3c73a03fcb007e5d3daf14f3c51c94a0908b7ff56bbc434a3fb4f727a410f3e9a2e15434dd92586ad5314593fb944fa1a0e3190f7c5e92273ad02c273e5e137bbe4b0b90c26cc2f7007b7791f8e5ec37c178504c7e2de852a01337f883f148b2a824e66103545fbd2a9366d6b4de5ebe1d9f602edaf9b2d04c09e47cb71c8d4f9eababb68e1036c9231507a8709ba8cb758d34ee7924282fda8d5a972888608cc7c12e1ee97aa4a99ac257708b6a498d868aef823d31472b7618dfdf644dc58a602515d630a772c68276829f1d7fed1e3ef98ffbd2e686afc171bc8cf72be235dc2f3b2d5376bbd7eb4bf0540de21c289a35e5ca221b860c8f40b6c31f6b9c02257b12b8ac2dc86a9aa1a8df7735e87a83c48c353c0a1787489f04c4cbce92e9e974f796e33fff22eb6cea16b4992e29962da70a50ec420ea5bf1a6025018eb4f0372809aa69c7862d0e45ee6132da0a279a59fed7e45a8de3834c340d481bf74dd7ac16ea2fafba8a2ed14be9961494e04a0d4248fab0ae65e83849445bf0ead114124986e01f11a021bb2791f4057a684874cd0ebfa88e1ee726e7467fd729cd7a04323f5a1bde56560afeace8cd76978758298f82d3f40addaaa44ae30e4b79ef4ca9d4f29a55e4d151ac662f446ce819124fe8fd8bc5e24040d963bcc3429c80e05bae5f4134423e1cf329f4d352f05a8bd88fca5ed09e74a68617b5ab52b710d6f4f27a65784f5b129a62df9a6df285ee4eab2605e983f19bf4bafe58df11489722505962b972965fee5f04901c8fdee7eb24dfafac1515262b831995d7db03643939402d143d72fd02d1961e0aa69c41eb48a7aafc84dae214d92b8f167dc8da25fe5542973cf8771151a2e9ab83cdcd18d32e79ee6e8255765cdd80b676357eead4a06485dfaa7c33de93fd90cdeb238fa719075ae1cd48f985a56fc3c574d93639d0b6a90996791fcd32b698a11ec7825f28adbbf18e4f8eeff59a759a7de85c7def3ffe8770b35f82a8a22bebda1e26a386c3e65fc94e08c9f47ee21893cfa05f1fc7afdaeae9b0750b8739d0d06f5a7fd78e1bc19cd6447c89809a141f7975523373f993f5e531f0614231dda69313253aa5db912e3a76e8276afb93085c1ff61eed88600691b873a71c97d9a0446a08d608242b2e225619423a6c4ccb0b3b61e0b79bf7066a330e9f412f0cc1ce8755bf4cbd54f3361c6d6d984485b954ee191012459e2cba5949c2a613db0afd172f16dd8b3740bc42dfe38bd2207a63b057d350655b5998090f8b0616e41e40cfd716ae0a45fa0aa1346d47edc8f6f4cdf86fa0356827bbaa2c5faf975e1f72b01b945e9a2c55cb8768e92a046f4e34b1b20fe237e9c2d9382504897bc0a7bf30562d9da4e6bfbaf7bb7292743ffe23a507c29864071af0dffdce6ee72b8c61dd5f08ade69700d22f2f4c3555b4d403afb59ab5e472cc9a832c490018216d4808f726287ed73d992f15feacbb212a4f6706bf908aace2dba1a62c945214a557451c81e3cfc9a0dff47537e9b817bafbf3c9490a4a6347224c4aec952ac7d7a49b05c0b155109d8c81e8b9f2f840e2b5c001ba389c18668e98fc07db8bca730700151efa95373a207457a2a2b75c732c4d7092d04f21962e1c4770ff1bb108658890077f657a81841b22a562e11a4858790f052aeb7c43fcdc375277ee8a0ae13d75a36b240f4b3c95d6bc762d5f394471065e2c9a92a3671c295195add13c6608df2cfd51b93f393615a5baffb03e9294d1bab37d4f62f2998bb803605f628dcabf0e1c7a31501476856d92345b04c39aae16b1b77c10209f61e6e5d7737b5763d76256a673c15a8a78c7bf9a950ac9c6f73624afef8a9d1cd8b82a98963f51f2eecaa6ef53faeba495240eace5e445b764e331beb9b2505400fd70ba8987147aca5865cce73a8b9ed6cb87aa4a404cf6ce78ba444af6cf7de32bebcf9fd3f6dbfaa796c9cb53dd76c066036e932692fd1f02a75b9bc8f3941c74397b58a0dd342478b6fb7e44ed485f82dc4be7bc43c76947a2776ce5b592bb64d56fa3e8cfad395bc27edfb35f6a4ad097fca7dff9fb4d88e80a51c9a486577ccf51375d507487e4ea63da4fe647ffb524b52834edbedb309259aa524848c11cbb9e1df00e69aa7fc4f9785a042706d3a6cc565430863a5f4385a1edfa40d63405f053ceb5df2f0db0de0c479888898cea5525a82d0972ba9940694df97f8e01427f41553b1ff495db0b6fa982588e6b2c6996b9e458b5862eae0a44dae872040c3a3946c2a5bf12c9c8bf8be180a13552248e8d37c915803dd79882bdb8e8d6e3a8179248441df7f79182e426e47b8fe60dfaef3afd9b8a3142aba6f583a355b81714ea6bae7f03d170fb7bbc68cb062d51355393a77e2ec31a43a1903835f4aca4238b5848881a9db314f8679e4cad5d155158a9d16871f8dbe56e4c5c72255b6170afdf0e1a471e1f44723efc28f9342bc464aac00658340cfa096c2eb7ffd1d5bd8ebd7dc65b960dda2e6e6bed23fed5e7766a1d6fd56b413d74363c7a7dc130d63891a529a58453d1de82d0fc4c62642a973fbc3d5ba743817464c2d91e3abb918bb00d36700b537fa2830f244901f3bed4e90cdaa8132b6e62420e1092cb8bcc2484a366d2005ffe1eba5f560538673efde171bb71c946d9df2b4366860cc6a0e5f00e2b6b26b098f20c3680a77079b2e059407a41a6e61c1f00fe9ca6287c4d4be228c7417a853d974a8aa8b1029efb5aa1d092b0c18b224cd0bd653cc0b7d94ace5effe3fbaa54cf3f6603bc9ef7e4708127c1435fe7a9e3754ac9387dfce94833a378fe3bc32fc2e50cc27594ef8702adff11c1a2b9e838065a7162758ccca298ce39bd54b250e852cbb0934bb892005626c569d202f290c12ad0c392a1beb723a37931544af59ddf800c117a690fcf33de2d11b0d61d7564d94dcb9e9ac17a0cc7a028be819268bb6477fdd462f07f4a8c3dc8c9b6a6c8eb452ce0e81fe4cc3e948b9fa28b85728949e1b75e22e0fcaabe03aa58a24cf95f91945bf68b36f3dc107e6c4fd68e7167b4cf50db316fcdef62c9c5ab90fd92729b37c327b2cfedff4dd6564c16909f788f69c80fbe3632a397aff5f085c91780bd8eb4eb3be5beff61e35b79811704cd71f2b8614e441013e4de3cba932c1188283ce765b68a2db49f1eb8d5e2cccfc8f1dab04677eb2445cf2eaa41e769244588627b8da8daf3b12d03e3329e35a5a0d2609fb4aae05f4916fdfcd79753e02087c05d386e43ea49df41621ce6fb592f0ed72dd8e4fa67898b14710d39b941f951a66872ea18efde4e264b31f5485b728cd381f762fe6c3a121fd434b98bff97726349d291f1adfd10e7d3d5a4e41533d9692bb6cf954ee9ad69f6e0df00bbae03c7a2e7355a71a2d36488fd2980cec95bddf7c0202375b01a6b25afd14bf23341d3090c6dbd1fda26d3d5192a3381a197e439b6e686b9fadaf5e981ba78d3ad89213554dbe2bad60a6aaf55eea48477d6c2c71c2a39c62fbbd3ada25360424733f8ff7e0134341f3f4f05ed5286394708d0ac611896e36e2fe0c49ef102cccd6597022d93c2cd4d0d10a92f7e7eb4afee39641989027cc343dec56e54eb0562060e20568ef4afbe48faf8a62b67934724445f541cdfc5110a22a14ac5ca70a3f8475429c22d2d0a018a50343cfb9e4ebcc63a58faedc6efef0fc905192d4fb5e3ef480ec304973b73cf738785a1ddca4706af01649247d4c279b9d6c735a63f049cfccc7487b9f162dfbd41d57cdf3cbb14410cf7058e50cfe5145f1a9fe4a816267c91829a2f3c50432aa7423a0656ab3fa76cfcec07ac18ee9c8bc0f21fc6ce77cc599ab2c44d85799774062d011c8f40805735d88c79d9b5c252a1e803150b32b852521e15d7ad27228430c4c8f71784d331edcf2497e905fb95eae5f8d47fcbf75f3105963044852ddb2e917a5b372da7c163c66665fc03012ff896fe713ea225a0fe4702dda79f57468558b87755be6f6e9b9f08939c85b48cd33defbb830ca915df4a93642fc3f783169492627ea98dcc15e673fc39accb379d604126b03754e232ed9ef3f2d241683bbece211583a4f3ee224dae3970a70bda65c1658aa53e1e454fdb26162595a0d12164b5163175e0c6db104506d4ecf7fa177530e224862c25e7e3dc771b1709a77611717b981dde90eed5425c2477e33241d179baf412395daae91893ecc44170d526f82ff92d9ceee89c72b77c5a7675c2db04e33128b5b1a67a60dd62b3ecd270b15ef302f2d976c8ce3042d2d7f4cf22f80acb219041ee0da94a6abe1e25c96b8790b9b982dde5eaff70262e06e853013f047c6c8283a31e9c71cfac58efd37d0ed53405bf50d9c576bdb05441aaa7c8a0ec70543d71a3d0be47e3a17207120c84f88b306dc1abc2b8c245f462e985e362f7fa80d6218fe234810de3db4ab551102f5f1551dde5aeb1e2d2b74196534120d43035da32e79ee096a83217d2726eace6a9e9f95bfd0b60e649b7705a6a42c55cfc6b5b380ef4e612cf560828f3986531f71c7c8119ebd6d3ec40213037f72bf561c4a6e0e327294912d0acfc84100c187f6af677cba57fac914dc28c7617142a952bc6a123a8daff5275bd30f354fe9719243e20ba40f74a46f2c1ce8bb719c8856f947473a5041f736d7a1a2ed679a44a728e8d2ef6bac2390749de18e831550785121d90aa3885eabda30d15541ece44fcc3b75b3097762792fefad7d7921907ed57116eef9c23e5d3d8726f6fc0b87044852b40c767a74cde375cec0be104c3838f9ec742f3fd4873cf917b003e9a25a1413ae7f54830840e12d4e0b4c34ed285b55024e78c588129fdc7ef0cb87593a0a475d1f0327d1b5cbeea0f612a30f253fed8a591708faa403a87effda543068a37701e82f11fbe9b8ea58934be16694bffaf6eb7dfc8a62ea85cef0519407805b7950331d563b9b9db8762467596bdbe883bc6a7cc95d227ed94addacc2b5c0b0c8c7c34ede1d33e6cb8476985e0bba05063079e1d6e665dfc69449d299560a34e246348e76144eb50ac5cff4f34985cabec37180e4daefe48b9b43fe1604e352201062c1def02443418cff15901006db2755ed69175d8da7ed16b8936861cfac6cdda3d20dff6bcc7a895687a8bd901857438ea12d2656b0401c8739b9abd46607589c7b3192b4f5b2293ba04bb06a825e558836717dddcfee651ef89f85392d58f169ba43dacc3d4a4908ff828cad01147459037161e8d64d1f7945ab6606014aa9b5d53b5830c2ac06a52f59fc3dcacc6535303ff029ae543f79a641e2bba29e45e1f99b17fe7c4fc9d10d94a7552379f33e4c87e95d08b4ef50f2c1f80b7198547268d154c428158d67237c997b7431a816246bd37db676051ac9b7cfd38216a4edd7109af878d33606f928a590784324c8d91f931f0e7d4bd6818ce9e8ed47791b7c5a09b718abed0c96a778c14d746a9e02c6f64bf74276cce8972263e8d6cb65620d7679aa80a898452bbf6b16e3a73de5c934d70d7f67e0e0cc4fe678eb36bf2ac4cd9af4a1de9fac9a320cf63f120c14d9dd6ce5c7177b18949b7ca608116f0f98eaadcd7d6bde40891e5aba4447eb3be8a10853543145047696c50fb510fad3884f456ea51dcd9981d39f0fedced8e5b9c28529da5c0a9ec1b41051693bc9b83870e156ec6f8bbe837a4e00b4eccea781bdb7dafb30856866cea19c8098f6661e3db53bb9bb01f401e727f90be17b7b6375687ca71567bb53d54cf28629c73820558c581f1940fc204c8fde88f212ea6183858e37d387aaf0b8f109c876322f04ab20d774a1a32ffd68d26ca9a1e5e4c97c7880537989df5c78298a1547a97c100add178bb90f1af451277a1940bd3c487346303eca7b219b25e44d6d2825b40a07e9d1d33f5cd43a420aa53c6cc7a405a4a2269fe5dcb5a17d943d0691e3db04fe20ae62c63d0b389b66940be57a765d26929ad4260f36a258bac797e819e92b546d82dcaab8edc216af2c4343b21809ef0f957b2c5787355649a6588a4a1a786eb84753160c464f3c466ea6f1724b360640cfbbfb581b33cc97a7021e9712824deb0223f43017f503dfc610d99c77c80713f24b22f0ad6a17e872a2c1c6a6d3a44814734c34b1b791900967bb5a072859f3e09798bf92eeebff2e246afbbe02600fc55818d12c4255ec7b0d06c2ba0851b3e5b6c594651808ea6ac11c1ac7399da49e1dcaacf668c7fc5b323b7c155f9dc1531c9682b6eac7d33e1f0727cdd740ec297645c3a3d72b9e376225f145471906671da9c0e9ce133f522e57d911adbcbd4e039c8c742e72cb0897a494aac150f563253faec42dac843d6f615787ecc6c113337c6b2af60d7f9e6ed5cde32e0251eceabd9b852db89f9a63027e86e594d3a1741ac8e1b9425c78b8549f13e7e5547f6ece2e90d1bbd24e7015f11b35d3c3be3b9a3be1299e86dbeeed4a8fb39a914f436908b6aeca0384d70bbd14b71d65b90018bc8280f917d6317ba7807968de22608ddb0675c7e309352173827819b0d0401347331d2ceca40ae3027d6bba3afb05dd7137faf3f26d13f36ce0f7bd9d6da0b8c9a65c4ff1e65c3c978e4ca20a4ba3758600cba5ba727509639c6aebf5d06c6d92b3037aa65c3031f189415cdf23fcfde0c46cc83566bda454f5e077e07b18c0d9ce42908fe904043ca28e164d10c79d6bd8fc47fcd0404120b4b5ae78712c245aa3155526ad7e1cadaffb33070fedbeadf640ea5adcb69489c7eb17d4352c4781d5c7385ddc072aa6842b87bb639740c07a5f4d7f630aac3fa4021893c7459bc9673c385fee33fa8c4e41c87ea7d43ad0ee39d4561eb408d675d4211d7dfa0c46cacd5de656d89923b6f3b6a2e0e5579ff1e8caaf70508b962fef21a021387cd41a32bc3699fab77ca998c8e96cdb983e7affa4d3fec291f594cb56cc5eff45f5664bcaba0346b06b24e80bbfd890a16623be44b294a822e36b2294b68d97e8273d926bbf223dcf009bf66ecc8d791c00819ef298cac73bfff3f95122273cde2a331a4943326d706e6d57a46da740bd35f1c73cfb51052edb763032b45adb7483d490e8932f1bbc56704276f19517aedb357af89345b4a5ea84e0e75c7d45a1627521ef11cd02b7d9d0e0e18ef1deed315ff9068a8c23e04c4440e8d5cf0013c4feed2a561707af5700f4f77bb8f6e46ff703c075cf4f8b72791502dbb2243f55c6fbb972c4e481ec0478260e082b858174736cf859594720095bd76816fbbe494944353357d4ff9f8e0543911eff671db5d604fab6affbc2a28d6c771507177968098670b2ec0d11b92f6ca60fc7f7fca4305f4f911ef3c522325dc4cff15d23e72cc61af4105fa35cc3f0b7170b72ee9d058564f443a15188b5a73f0ca0b05f1dbe8ba6a3add9b95bbe244c3804be0615271ca66735ca51561af5120e500a538231c913579d9cad28184a7e67d051755f8a5b5b18287f58c15c38576e02ba51dea01154d377a62f3bd1c00b597b3675cf4d5745cf6157bdba58c16c97b2b8bb83e078ef8e906082ca6a8df9ad5c6becb136ea0a965828540caf7d7897dd4197755c3a7df3ebfd2b7dac1c12c960c235a6a1468639597e59c71c4c5b3a5fbd5b48acd138ff83ffcb4b91173aff57cc289896c3984e040493a196a90ae6aab8ce59fe35e33ea13c3a146b0c144b5fd7f5b34c6f9534cbb272e5da3cda900c0eb2c9f226a6183a32bac8e8e53eaa27815f1ca1cc467b7fa67f827e7421ef93df9d11493c2f6fabc05aea419f140a94ef3b4eb2827a6935a36e74b27a833b7dfa2451dfd12ffd1790ff4961dadda2bfb63e01d6e46dcb7a7107cfbccec8064ff78f17bb397d98d7391b5f2018c5c07a033be0d148dc1c0f779a188d03e74827957980088099a34fdfb5156eb678ad44f8aa72b0ebd9e4ad6be6b2fd1ee8c521e0408d99da191652bea8a673a1029036b887027def702299c6721c550889687ac3375795b30388f1234f3ab8ab4e3a17910d445f276d6cdfc0440c3476d63b032cbb15c2ecdaafed5b0598a90251f1db1abfd22a640532ba13b55f2746be388ab59ee16cbf2489b6a7c6eb1be844f6158d733636fa700f6f5a4c0690410c3a5860da9341e5241b7b1f3484c61f831156b185732643e2df5b7e62e856b8b41b121e4734d533455666575c8dd1587a5b237a9e54a12f623ef0ecc33197269acf0fd3ad5ac7f1e88e2b1ddddbc073e5d3893e9494ad203dc14a28b1c0f66f257670c920ea6c77ec79e5b8d3484cd93bfbf63dba90acbef7cf7d9135d00a70c4c8b7988aec4bd43367814a93ff0d7b76b916973fdad8f4e24195bb8004eecb1f054a98973713c2b2f7c8c90253dc505204aee08274bedb8274e0aedd980c253300e2d314fdcd3eb5fdcd629aae9a2e2432a6ffddf20fcd8332d84157b50611aa3f4362900c1c9857e13fe581616b3a002efac06c4027e2f87e08107ee3377712a4b370c620176ff9f40f2a95dd2ddb4063f681097166ea2328100eb0cb3dd0f63dda250b73a91972840b9582cde47b0403f317c183946a780118e94d36cabbe87659e644907b57479c71aba5bc26c5d0c2405ee04f171e6d6834aaa05c5fe25379b3165fedc0cc9fd981a512f3601a79ca55ac17e36ce6d1222d443d85b2d004b9e61a8f9a71dcac0f606cda97bad823748ee5aa51d0a9afade8891a40cdc581c6b0a5befb04568dc97aa10aa02db49b89187689687fefdec26f52e18f57c398799a18709b05488ec244a5b44c5e74c287f99d55c5d997235359b41587cd82f34612f77d67dc18d3d5f170f7db6618a1d0e7ca650deb8cbae1b7a1f1e669f4927ae23217f2033b7be991475b378e75a13a35c0c5155774ccc9b44336da53f4165380b1a6cc5e318a0073259759cd8fc2c1588a0725e7be5c3ca7c0e4aa14a2a39ec991f93e42b8f43eb8dfc4691f0fb20df3dd2c7b8afb56a6e6bdb2460d230039232af232244b29e877693f767bd303ba3b38898631b39beb57f48d79bc14359bd89ce0ed26a23d478979c21eee3d2b3834847f20c9e40bacec23ae71ce559723582c407243b927cabbb664eab4a3a90b05553a5c2b3227c7f22c72011f432b1c523950f5e06c69c48b32ab2e5893bf9ea754b91d49fd080c638a75bebd234d7a10747991aa0d0eb4adfda31303344c19ed52c2565cce5a69917175d696751dec797ef178c0ae8473aab9f5ce36cbf9316b74a6c6dd85a05c887eef575cb176940d4abe82540d729a2c4ef1d1087826bd435eb3a689e1745251caeaad7b67bf1623e88613ce3f9f8c1239225fe414c1ae5f25d221214b26fc4f37b30bd031b4658eca0d43eb74ef65d18c9ad0214d8706ba2c9c592c476349e728246d476210dddf36bc329fa447a780eac271e4b02828a3aa2085579ea34620d6b08ccad6b3852e7914fa8801807d4891efc547af17e782487b6780b1115c656c02b4dd182d5c1155430b28bb1bb96d052fd21b890d70c87a1ccddcb18e8708b8c86e0e6d4da5b936ef3ae9f5fc68793e223086e0a7dc6fbad64a4b49aae74dc83e60e8850b0cbf9c5dd6bcea97d51aac21939b320e3662f2e77158af60e3d68c395d91df459359dc0fbc0f5c47f5024cbb4ddc2f496021531088298760dc4e41d6bf63fbce49b4b0c69fcf5db765d3499640b61d4896d098e671a07911473e041f8c54769fb3d07717d55c9d24c8439a6f4171816bea2643ef54c8a84ea3b91866eed4379107b860e8ea9aa657e66f8e81e1ed1a336957e66c93e0fbd0ff687584d714985ee1baacd8633e5bcd6c15f53fdf9c7cd4a7624af4afe5eeb8773b0ae7ece847d83b02848aafa2aa9988c594d27e97d0d25884aaeb74cec4a673adfa8edbe65114e60da95733600a090800dac7a69b2995722a2867a91ef592e89c17afe0862e040008a02d19f36304669da2a2f31481900051f9f87918d4b289f18cad30e6b64e606fb3f8c7ddc263ec2671ba91e1416dece812f959a91758ab8f780b786129a959e49ae4ba95283c0ec9f164d9f3b005ab9c7717136e19b758e749203cc5c409c215d201b72024fccc0133d256584db7fb28874de56b0cf9bd3732f1cc02f8157934e4d643523b427af2aaf96f66faf4e4667c0772dc0f08a9b15a2bfd59ac206751edfa2ad37077f3288ad578ebd636be079cce09ae65481c93d8f1100140e263716f9ed024d54489f3c5eb092a7f4e92679edda6f715e480b0ea0229e0b8aea19f40dd8b29066c275e607c639c0e79b8902e3ebed2134029eeb157927d4ebec3fb4f22efba9f72eb7a7bdce79f9e0596587417addb14cf79d2a057801b31dda16594f52134248e2f8f216ec8b9e42706da8c81c5895c497ca4eedfb90f2ee71723d74dd34fa57fc1e9a1b8825918f60914bad52ff4400f79d6f8625d6efebcc547ea4dc40df5fed1f508ecbb7ed40a6cc50d436a668118c3584a8164259de111c738335d41a301fbf9e270ddeb4c6846cc457cffcab30780ccc96a5d5b2534a9952d1bd6c09374ebf357aad21a924300f0386f9a93e4c7a5f7481729ff8b8a17251f622aa6d32d9bb7031a72916d2b18a760b457887378fda25ab4bf40cb8706f3508", 0x2000, &(0x7f0000001340)={&(0x7f0000000400)={0x50}, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}) 19:43:26 executing program 5: r0 = socket$inet(0x10, 0x2000000002, 0x0) sendmsg(r0, &(0x7f0000000080)={0x0, 0x0, &(0x7f0000000000)=[{&(0x7f00000001c0)="240000002e0007031dfffd946fa2830020200a0000000000000000e50c1be3a20400ff7e280000005e00ffffba16a0aa1c0009b3ebea966cf0554edc7de8ddeb133c2b3ce9fad90f15a36a15", 0x4c}], 0x1}, 0x0) recvmmsg(r0, &(0x7f000000dc40)=[{{0x0, 0x0, &(0x7f0000000140)=[{&(0x7f0000001300)=""/4096, 0x1000}, {&(0x7f0000002300)=""/190, 0xbe}, {&(0x7f00000023c0)=""/144, 0x90}, {&(0x7f000000ee80)=""/4102, 0x1006}, {&(0x7f0000003480)=""/158, 0x9e}, {&(0x7f0000003540)=""/164, 0xa4}], 0x6}}, {{0x0, 0x0, 0x0}}], 0x2, 0x0, 0x0) 19:43:26 executing program 2: r0 = openat$kvm(0xffffffffffffff9c, &(0x7f0000000080), 0x0, 0x0) r1 = ioctl$KVM_CREATE_VM(r0, 0xae01, 0x0) r2 = ioctl$KVM_CREATE_VCPU(r1, 0xae41, 0x0) ioctl$KVM_SET_USER_MEMORY_REGION(r1, 0x4020ae46, &(0x7f0000000180)={0x0, 0x2, 0x0, 0x2000, &(0x7f0000000000/0x2000)=nil}) syz_kvm_setup_cpu$x86(0xffffffffffffffff, 0xffffffffffffffff, &(0x7f0000000000/0x18000)=nil, 0x0, 0x0, 0x0, 0x0, 0x0) syz_kvm_setup_cpu$x86(r1, r2, &(0x7f0000003000/0x18000)=nil, &(0x7f0000000140)=[@text16={0x10, &(0x7f0000000000)="0f01ba0c0065d9fd660f388000660f19240fc7787e3636650fc72c64660f380a38b893008ed8f30f090fc75a09", 0x2d}], 0x1, 0x48, 0x0, 0x0) ioctl$KVM_NMI(r2, 0xae9a) ioctl$KVM_RUN(r2, 0xae80, 0x0) 19:43:26 executing program 5: r0 = socket$inet(0x10, 0x2000000002, 0x0) sendmsg(r0, &(0x7f0000000080)={0x0, 0x0, &(0x7f0000000000)=[{&(0x7f00000001c0)="240000002e0007031dfffd946fa2830020200a0000000000000000e50c1be3a20400ff7e280000005e00ffffba16a0aa1c0009b3ebea966cf0554edc7de8ddeb133c2b3ce9fad90f15a36a15", 0x4c}], 0x1}, 0x0) recvmmsg(r0, &(0x7f000000dc40)=[{{0x0, 0x0, &(0x7f0000000140)=[{&(0x7f0000001300)=""/4096, 0x1000}, {&(0x7f0000002300)=""/190, 0xbe}, {&(0x7f00000023c0)=""/144, 0x90}, {&(0x7f000000ee80)=""/4102, 0x1006}, {&(0x7f0000003480)=""/158, 0x9e}, {&(0x7f0000003540)=""/164, 0xa4}], 0x6}}, {{0x0, 0x0, 0x0}}], 0x2, 0x0, 0x0) 19:43:26 executing program 2: r0 = openat$kvm(0xffffffffffffff9c, &(0x7f0000000080), 0x0, 0x0) r1 = ioctl$KVM_CREATE_VM(r0, 0xae01, 0x0) r2 = ioctl$KVM_CREATE_VCPU(r1, 0xae41, 0x0) ioctl$KVM_SET_USER_MEMORY_REGION(r1, 0x4020ae46, &(0x7f0000000180)={0x0, 0x2, 0x0, 0x2000, &(0x7f0000000000/0x2000)=nil}) syz_kvm_setup_cpu$x86(0xffffffffffffffff, 0xffffffffffffffff, &(0x7f0000000000/0x18000)=nil, 0x0, 0x0, 0x0, 0x0, 0x0) syz_kvm_setup_cpu$x86(r1, r2, &(0x7f0000003000/0x18000)=nil, &(0x7f0000000140)=[@text16={0x10, &(0x7f0000000000)="0f01ba0c0065d9fd660f388000660f19240fc7787e3636650fc72c64660f380a38b893008ed8f30f090fc75a09", 0x2d}], 0x1, 0x48, 0x0, 0x0) ioctl$KVM_NMI(r2, 0xae9a) ioctl$KVM_RUN(r2, 0xae80, 0x0) 19:43:26 executing program 5: r0 = socket$inet(0x10, 0x2000000002, 0x0) sendmsg(r0, &(0x7f0000000080)={0x0, 0x0, &(0x7f0000000000)=[{&(0x7f00000001c0)="240000002e0007031dfffd946fa2830020200a0000000000000000e50c1be3a20400ff7e280000005e00ffffba16a0aa1c0009b3ebea966cf0554edc7de8ddeb133c2b3ce9fad90f15a36a15", 0x4c}], 0x1}, 0x0) recvmmsg(r0, &(0x7f000000dc40)=[{{0x0, 0x0, &(0x7f0000000140)=[{&(0x7f0000001300)=""/4096, 0x1000}, {&(0x7f0000002300)=""/190, 0xbe}, {&(0x7f00000023c0)=""/144, 0x90}, {&(0x7f000000ee80)=""/4102, 0x1006}, {&(0x7f0000003480)=""/158, 0x9e}, {&(0x7f0000003540)=""/164, 0xa4}], 0x6}}, {{0x0, 0x0, 0x0}}], 0x2, 0x0, 0x0) [ 371.017001] audit: type=1800 audit(1623095006.793:326): pid=22989 uid=0 auid=4294967295 ses=4294967295 subj==unconfined op=collect_data cause=failed(directio) comm="syz-executor.0" name="/" dev="fuse" ino=1 res=0 19:43:29 executing program 2: r0 = openat$kvm(0xffffffffffffff9c, &(0x7f0000000080), 0x0, 0x0) r1 = ioctl$KVM_CREATE_VM(r0, 0xae01, 0x0) r2 = ioctl$KVM_CREATE_VCPU(r1, 0xae41, 0x0) ioctl$KVM_SET_USER_MEMORY_REGION(r1, 0x4020ae46, &(0x7f0000000180)={0x0, 0x2, 0x0, 0x2000, &(0x7f0000000000/0x2000)=nil}) syz_kvm_setup_cpu$x86(0xffffffffffffffff, 0xffffffffffffffff, &(0x7f0000000000/0x18000)=nil, 0x0, 0x0, 0x0, 0x0, 0x0) syz_kvm_setup_cpu$x86(r1, r2, &(0x7f0000003000/0x18000)=nil, &(0x7f0000000140)=[@text16={0x10, &(0x7f0000000000)="0f01ba0c0065d9fd660f388000660f19240fc7787e3636650fc72c64660f380a38b893008ed8f30f090fc75a09", 0x2d}], 0x1, 0x48, 0x0, 0x0) ioctl$KVM_NMI(r2, 0xae9a) ioctl$KVM_RUN(r2, 0xae80, 0x0) 19:43:29 executing program 5: r0 = openat(0xffffffffffffff9c, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x1800007, 0x12, r0, 0x0) preadv(r0, &(0x7f0000000280), 0x18, 0xd9f, 0x0) syz_mount_image$msdos(&(0x7f00000000c0), &(0x7f0000000000)='./file0\x00', 0xffc00007, 0x2, &(0x7f0000000240)=[{&(0x7f0000000040)="040832090000ff01e66174000404090a0200027400f8", 0x16}, {&(0x7f00000004c0)="dbed7d4cac17", 0x6, 0x1f}], 0x0, &(0x7f0000000080)={[{@fat=@nocase}]}) ioctl$TIOCL_PASTESEL(0xffffffffffffffff, 0x541c, 0x0) 19:43:29 executing program 3: r0 = socket$inet_udplite(0x2, 0x2, 0x88) socketpair$unix(0x1, 0x0, 0x0, 0x0) getpeername(r0, &(0x7f0000000080)=@pppol2tpv3={0x18, 0x1, {0x0, 0xffffffffffffffff, {0x2, 0x0, @loopback}}}, &(0x7f0000000140)=0x80) connect$unix(r1, &(0x7f00000003c0)=@abs, 0x6e) clone(0x20002100, 0x0, 0xfffffffffffffffe, 0x0, 0xffffffffffffffff) perf_event_open(&(0x7f0000000500)={0x1, 0x70, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) sendto$unix(0xffffffffffffffff, &(0x7f0000000280)="c13045b29ae9d769a494822c309d8d2f75ec37d79b3e984253994d2f4d2dd4e43384af979469722a3d0afe5850ded02196dfa2a56b556ad0b2791993356b81e7cfd2d69c097409bfe6a05e56752278931d996a7b9ab80b34e492220aaae8584e3652b8c32652f371bd379f03b89250d0214a7696cf71fc687495378cd67fcfc7be5e19c1c0d7", 0x86, 0x20048001, &(0x7f0000000340)=@file={0x1, './file0\x00'}, 0x6e) accept4$unix(r1, &(0x7f0000000440), &(0x7f00000004c0)=0x6e, 0x80800) fcntl$setstatus(0xffffffffffffffff, 0x4, 0x0) bpf$PROG_LOAD(0x5, &(0x7f00000054c0)={0xe, 0x16, &(0x7f00000009c0)=ANY=[@ANYBLOB="61124c00000000006113500000000000bf2000000000000007000000080000003d0301000000000095000000000000006926000000000000bf67000000000000150600000fff07003506000043fe0000070600000ee60000bf050000000000001f650000000000006507000002000000270700004c0000001f75000000000000bf5400000000000007040000f0fff8ffad430100000000009500000000000000050000000000000095000000000000001c0a7900009d3c2792432a4fa650c512aee994a5642cb064ecd5615f3196e3359aceb7556e7e60bd5d2e4b5992de991371274fdff6e79fc722f15659a7c85615c1b88bc894123cfe2314e887c1677fbefd35893d883a2c559b7a34db461b1974af360eace66cec40d92706d0bbcc5bf6fec345ae9606c3c1a348f9b395592c1018e5e4b41b13000c94df1f2db24c67d4c7ba9ec035883e2791a9e9dff3e8bfc7d1be000000820102b1900000000000000000387a601e3a3412086dee84efd375f0645f3301f55d3b9efdfbed9b430bcf0418e100bdff1c8bcfc0c229874bc3d2418bab997c8bef9aa55841caa572ddff9220c67c9e17bee524c3dc747445763ecb0a7f2cd12bc34b0fc0271124cfb5279195f701000000f77c71294bbfd85878726c49eb89085967722da6cb884d1afe82f7f722e38397996271700241094d272dd8b754b2dd36d44f92991a7817450bc7921dd372e621dd447b86e7ffd1bdc198deb495cac0995ca3ef6c1affb693ae366b0f11db6ee4830db4713e5ce6cac6a27e29f171b8e9f172c3db24558d77b8bf18be45c50b3fc005fa7b134dfc948f6015e0389d7f34cb9c02cf517c8ed7a9b6159c1446ef1c2ccff2bde95aa860ed9b836d6b8fcab7663d9bd8415e6f90fdb007b8f3e08de3a638c4fdb8562eb85173720c1df1147c9f5013c82fc98604bd70cd56609a6b739437e3010000d9cf81bcb1d262845762f6b0a284cc463b42492bab0f7b25895cc3ba8bf0b5e0fc018463d03a73fa85429725545128b0e9b550a13d0dd35092250bbce4f618cad2375a34c7f15c3096f300004468cf1aba4a6f21ed0eb3681c696320d3251b7eab79ad8b126500419e25a94ce13a7a96decb79c90b8df10b1e364cf97eaa49fd22942a0fad0d814f230f954eec84ebb7e20594e2e6f2371dda9fb3977f33c516aadc9bc51f23b12f761c4a0335cce4fbe7baafc8d0a6c6d8d0ebc20400000000000000c83cada15d686de0a0bebb94491b4b655f94dfa2ce197dc845ad83ddbcd4c896639831b8e5f254db99752a86b576337ec250c6f83b8cc300f8ffffffffffffe9f5f4628de6563809cdbe2101399c00000000000000000000000000000000d041c283edaef472d000d169d827488760c9eaba70ba10633e1ec690ac69650b22e96fb14b2a8782390bb42c2e80d24747ac70ebbacf42f7b7f2d5c8b32e999ce7da869b165932bb588ea0f7a044d753"], &(0x7f0000000100)='GPL\x00', 0x0, 0x0, 0x0, 0x0, 0x0, '\x00', 0x0, 0x0, 0xffffffffffffffff, 0x8, &(0x7f0000000040), 0x1f1}, 0x48) exit(0x0) exit(0xfffffffffffffffb) accept4$unix(r1, &(0x7f0000000580)=@abs, &(0x7f0000000600)=0x6e, 0x400) socket$nl_route(0x10, 0x3, 0x0) 19:43:29 executing program 1: r0 = socket$inet_udplite(0x2, 0x2, 0x88) socketpair$unix(0x1, 0x0, 0x0, 0x0) getpeername(r0, &(0x7f0000000080)=@pppol2tpv3={0x18, 0x1, {0x0, 0xffffffffffffffff, {0x2, 0x0, @loopback}}}, &(0x7f0000000140)=0x80) connect$unix(r1, &(0x7f00000003c0)=@abs, 0x6e) clone(0x20002100, 0x0, 0xfffffffffffffffe, 0x0, 0xffffffffffffffff) perf_event_open(&(0x7f0000000500)={0x1, 0x70, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) sendto$unix(0xffffffffffffffff, &(0x7f0000000280)="c13045b29ae9d769a494822c309d8d2f75ec37d79b3e984253994d2f4d2dd4e43384af979469722a3d0afe5850ded02196dfa2a56b556ad0b2791993356b81e7cfd2d69c097409bfe6a05e56752278931d996a7b9ab80b34e492220aaae8584e3652b8c32652f371bd379f03b89250d0214a7696cf71fc687495378cd67fcfc7be5e19c1c0d7", 0x86, 0x20048001, &(0x7f0000000340)=@file={0x1, './file0\x00'}, 0x6e) accept4$unix(r1, &(0x7f0000000440), &(0x7f00000004c0)=0x6e, 0x80800) fcntl$setstatus(0xffffffffffffffff, 0x4, 0x0) bpf$PROG_LOAD(0x5, &(0x7f00000054c0)={0xe, 0x16, &(0x7f00000009c0)=ANY=[@ANYBLOB="61124c00000000006113500000000000bf2000000000000007000000080000003d0301000000000095000000000000006926000000000000bf67000000000000150600000fff07003506000043fe0000070600000ee60000bf050000000000001f650000000000006507000002000000270700004c0000001f75000000000000bf5400000000000007040000f0fff8ffad430100000000009500000000000000050000000000000095000000000000001c0a7900009d3c2792432a4fa650c512aee994a5642cb064ecd5615f3196e3359aceb7556e7e60bd5d2e4b5992de991371274fdff6e79fc722f15659a7c85615c1b88bc894123cfe2314e887c1677fbefd35893d883a2c559b7a34db461b1974af360eace66cec40d92706d0bbcc5bf6fec345ae9606c3c1a348f9b395592c1018e5e4b41b13000c94df1f2db24c67d4c7ba9ec035883e2791a9e9dff3e8bfc7d1be000000820102b1900000000000000000387a601e3a3412086dee84efd375f0645f3301f55d3b9efdfbed9b430bcf0418e100bdff1c8bcfc0c229874bc3d2418bab997c8bef9aa55841caa572ddff9220c67c9e17bee524c3dc747445763ecb0a7f2cd12bc34b0fc0271124cfb5279195f701000000f77c71294bbfd85878726c49eb89085967722da6cb884d1afe82f7f722e38397996271700241094d272dd8b754b2dd36d44f92991a7817450bc7921dd372e621dd447b86e7ffd1bdc198deb495cac0995ca3ef6c1affb693ae366b0f11db6ee4830db4713e5ce6cac6a27e29f171b8e9f172c3db24558d77b8bf18be45c50b3fc005fa7b134dfc948f6015e0389d7f34cb9c02cf517c8ed7a9b6159c1446ef1c2ccff2bde95aa860ed9b836d6b8fcab7663d9bd8415e6f90fdb007b8f3e08de3a638c4fdb8562eb85173720c1df1147c9f5013c82fc98604bd70cd56609a6b739437e3010000d9cf81bcb1d262845762f6b0a284cc463b42492bab0f7b25895cc3ba8bf0b5e0fc018463d03a73fa85429725545128b0e9b550a13d0dd35092250bbce4f618cad2375a34c7f15c3096f300004468cf1aba4a6f21ed0eb3681c696320d3251b7eab79ad8b126500419e25a94ce13a7a96decb79c90b8df10b1e364cf97eaa49fd22942a0fad0d814f230f954eec84ebb7e20594e2e6f2371dda9fb3977f33c516aadc9bc51f23b12f761c4a0335cce4fbe7baafc8d0a6c6d8d0ebc20400000000000000c83cada15d686de0a0bebb94491b4b655f94dfa2ce197dc845ad83ddbcd4c896639831b8e5f254db99752a86b576337ec250c6f83b8cc300f8ffffffffffffe9f5f4628de6563809cdbe2101399c00000000000000000000000000000000d041c283edaef472d000d169d827488760c9eaba70ba10633e1ec690ac69650b22e96fb14b2a8782390bb42c2e80d24747ac70ebbacf42f7b7f2d5c8b32e999ce7da869b165932bb588ea0f7a044d753"], &(0x7f0000000100)='GPL\x00', 0x0, 0x0, 0x0, 0x0, 0x0, '\x00', 0x0, 0x0, 0xffffffffffffffff, 0x8, &(0x7f0000000040), 0x1f1}, 0x48) exit(0x0) exit(0xfffffffffffffffb) accept4$unix(r1, &(0x7f0000000580)=@abs, &(0x7f0000000600)=0x6e, 0x400) socket$nl_route(0x10, 0x3, 0x0) [ 373.411516] FAT-fs (loop5): Invalid FSINFO signature: 0x00000000, 0x00000000 (sector = 1) 19:43:29 executing program 5: r0 = openat(0xffffffffffffff9c, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x1800007, 0x12, r0, 0x0) preadv(r0, &(0x7f0000000280), 0x18, 0xd9f, 0x0) syz_mount_image$msdos(&(0x7f00000000c0), &(0x7f0000000000)='./file0\x00', 0xffc00007, 0x2, &(0x7f0000000240)=[{&(0x7f0000000040)="040832090000ff01e66174000404090a0200027400f8", 0x16}, {&(0x7f00000004c0)="dbed7d4cac17", 0x6, 0x1f}], 0x0, &(0x7f0000000080)={[{@fat=@nocase}]}) ioctl$TIOCL_PASTESEL(0xffffffffffffffff, 0x541c, 0x0) 19:43:29 executing program 4: r0 = openat$cgroup_ro(0xffffffffffffff9c, &(0x7f0000000080)='cpu.stat\x00', 0x275a, 0x0) r1 = openat$cgroup_ro(0xffffffffffffff9c, &(0x7f00000001c0)='cpu.stat\x00', 0x275a, 0x0) write$binfmt_script(r1, &(0x7f0000000300)=ANY=[], 0x2343a726) mmap(&(0x7f0000000000/0xb36000)=nil, 0xb36000, 0x2, 0x28011, r1, 0x0) pselect6(0x0, 0x0, 0x0, 0x0, &(0x7f0000000240)={0x0, 0x3938700}, 0x0) ioctl$EXT4_IOC_SWAP_BOOT(r0, 0x6611) [ 373.569283] FAT-fs (loop5): Invalid FSINFO signature: 0x00000000, 0x00000000 (sector = 1) 19:43:29 executing program 2: r0 = syz_mount_image$bfs(&(0x7f0000000000), &(0x7f00000000c0)='./file0\x00', 0x0, 0x3, &(0x7f0000000200)=[{&(0x7f0000000040)="cefaad1b01100000ff7f", 0xa}, {&(0x7f0000000140)="02", 0x1, 0x210}, {0x0, 0x0, 0xffffff}], 0x0, &(0x7f0000000100)) r1 = openat(0xffffffffffffff9c, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x9adf14bbbc0c6486, 0x12, r1, 0x0) preadv(r1, &(0x7f0000000280), 0x18, 0xd9f, 0x0) getgroups(0x0, 0x0) getgid() perf_event_open(0x0, 0xffffffffffffffff, 0x0, 0xffffffffffffffff, 0x0) mknodat(r0, &(0x7f0000000080)='./file0\x00', 0x0, 0x0) 19:43:29 executing program 5: r0 = openat(0xffffffffffffff9c, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x1800007, 0x12, r0, 0x0) preadv(r0, &(0x7f0000000280), 0x18, 0xd9f, 0x0) syz_mount_image$msdos(&(0x7f00000000c0), &(0x7f0000000000)='./file0\x00', 0xffc00007, 0x2, &(0x7f0000000240)=[{&(0x7f0000000040)="040832090000ff01e66174000404090a0200027400f8", 0x16}, {&(0x7f00000004c0)="dbed7d4cac17", 0x6, 0x1f}], 0x0, &(0x7f0000000080)={[{@fat=@nocase}]}) ioctl$TIOCL_PASTESEL(0xffffffffffffffff, 0x541c, 0x0) 19:43:29 executing program 4: r0 = openat$cgroup_ro(0xffffffffffffff9c, &(0x7f0000000080)='cpu.stat\x00', 0x275a, 0x0) r1 = openat$cgroup_ro(0xffffffffffffff9c, &(0x7f00000001c0)='cpu.stat\x00', 0x275a, 0x0) write$binfmt_script(r1, &(0x7f0000000300)=ANY=[], 0x2343a726) mmap(&(0x7f0000000000/0xb36000)=nil, 0xb36000, 0x2, 0x28011, r1, 0x0) pselect6(0x0, 0x0, 0x0, 0x0, &(0x7f0000000240)={0x0, 0x3938700}, 0x0) ioctl$EXT4_IOC_SWAP_BOOT(r0, 0x6611) [ 373.850683] BFS-fs: bfs_fill_super(): loop2 is unclean, continuing [ 373.873575] FAT-fs (loop5): Invalid FSINFO signature: 0x00000000, 0x00000000 (sector = 1) 19:43:29 executing program 0: mkdirat(0xffffffffffffff9c, &(0x7f0000002040)='./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=00000000000000000040000,user_id=', @ANYRESDEC=0x0, @ANYBLOB=',group_id=', @ANYRESDEC=0x0]) read$FUSE(r0, &(0x7f00000021c0)={0x2020, 0x0, 0x0}, 0x2020) creat(&(0x7f0000000040)='./file0/file0\x00', 0x0) write$FUSE_INIT(r0, &(0x7f0000000080)={0x50, 0x0, r1, {0x7, 0x21, 0x0, 0x8690d1}}, 0x50) syz_fuse_handle_req(r0, &(0x7f0000004300)="1827dacb7cd53e01b4852de2d748e21fa033071acb841f449efc23d452101807ae5c485596338a6d31388444ae8ade7b60a85a37d3db29ef19ae4c4d4db9c2c82c7908debb2e2b5ebef336aad77bef942d064955079af4e914f372cec8ed0440f6ee0bded3c565283bdb75124011227712d5f01e8c1eb86cf69205a8b5b374edee58ebaf09d62191cf41190260c30a719bbc9bc29be0d60c678791de6b236c9b5a057247c281937c2b2ae747c858532113e0a1e7af49298ef54f15572301d3c907b02529bc470beab8f9208cf92b17a9df99ceff90a1e384d6bda3fe823d8eff0e2229a43c31781935de69466b1082c0f88d3716f234e1d6e17e1360f6621e686d661af20eaf08cc97c261590ac3291667a87bbf66f86d9005f034ea5517b2187b6dfecebc1cb8fc4dab511a2890a68ed185483c548168803f353520cc6f820d1349ac985e12a3ff6e8a78b29ed97213962fca3ba7d04d1ab4dbcfe93a88831f784ed278d079eb3e2e69d3161600fc7b0dae825b510a59c14315fc6ca0ce68dafd088f02a92ae0ab3f15ca1a863b640e8e4a89407a8b8d752892e1f8b0e793d430c3ec46cbe2b6a4bdad728c34e734864aeac2b6b2eb51c3a2f9e6773c5834166511086dc35847cfa17974889795ed305353d41c9399bb95936a3c1be1099f21795cfc04d9699929eca65a0edcae5d4e564404e5292dc15f40d78d94be9e8dca92983bc71729ab30a70455bbfd5a98d97cab9778d9b7b69fb20019e7e7c7bc17c84da1dab53a187a116ac229e00312c95b1074afff18a8771a4ab47be2205745836dc3cc1ce531fe697e9a734698fb2343b331ad9f13214d1d7d511dc646fb8b3b70fb4611e6d102a0e2bda6311ca824537f699efdefbd8a3a523e26272f07abd75504188edc788af9c75aabf77f4ac883573f63ded319fa5a8b6317d4490391879629446fa5ea4c695f3db9739f7bc1da7a19f3e1c0ccca98307b3a7a38272b7455c8957b17138c9e170c27895fcf47eb5530948b7cc43d61a621293b0c83dc893f02def2b42a8bd7ad6c9cdfeb7a3bde141e98e5af7500b07d85c6314949b754c88cc666bdaaec89271f56ec11bfa0aa337feb1140b8a07fbd5c79bdd0239f8aa1d454c0e5a16e99d38d1212ff709bb1964c317c98bfef37b56944666f0320ec85b5b1e07731de5584901f8c65e14fd2ba83b500fdbb137c7cdf91d66400688a5da6405ca7e0b8107ed65be0ef5c6234b62f613e7e76d6f3d5cc12bde4342391524e25bab6ec0a358c6c66b7cdbdd9301f91589af65cb7c02fe8271a798c5e122fef9e7581d28884d33d01f0475c9ac052d2d014bdc09e2738487742f7bff40facf2e96dcdfefa336c46923b77b334daf7b01a9fd5d957a29b83adf6f23acc507a58dabe6b2804532bc1a865a01b1126127f7c6a8029531db8a51d8472c0abffca5be97b9b5433ad220ab9ad65cf94a1167f3fb2b8804ce66f9f5cae212724b2b3a04343580f5919f446f40eaa0177f25ebe68ee7c7a35d9d5ef6e1cb220eaf8ad9b269b15c2ab9692c345f3c3bd5965f06adfdfa2d672b5e3184ebe192f73e70e829adfac2e6318d238dceb6e3d7d1422d57ff7124793b92966bd229c0725b0d591e59c57f98841b5ffad16d0ae903406014d3e632d0654e9084f870e124046f3ebae3ecbf5c5365aa32ebf169ccf1243dc8fb296cef006d5f00447ecd2980abb98e3b6e6bf6181e5df7994ea1c1273784af0d92a57394c71926dc143228a8ade103ff61860d21ffd467b2c41bbbd2490dd36add865828fb64396f16831a3a74f57ee2254cc93b25b7219bc00339a2518be3caa4765ed63295c84f1d59144e96aacfb57c6441f64f29729bb7d68127ae2472bbf089570003b1e820191878ab6f53db01c180751e34672cf5a96edfefe164580d6101672281b59f58f3c7b1222f2b6d19c8a8e5f9ad539045f7dbadaa767f993da974dae20744bf5ad0e0ec71ee97696659981e067463c78bd9337b8bcfc070e7e5b47303eaaf9651c19f19a15eab8e2c47041828be50994b5695ee5fbc9a9ecacf9de714215eb7992c07f262db8843937934fdf6fdd31d0f3a44f074f3a1dd6622dbdb3364df79d5ec90ead64c29e05a6c5358cc6b9d8493b7e1c53a91c37aa3653cf2002072461f4b99fcdec142e53b87f61ea55cdb834dd4e03f2f57a206cabe2f3f3cbfad3b4117bf4434718022b09a8419959a9bb97fba50a6b3b9a844cd1301de7bae89f8d1bf549b88dd2bd0697e70ce89cc2e383221ca2ae9d3671a730466c250a8963f6411a42ecc85a00c01b2b43c39432d5065a5fd11c29a23169891cd674cf3a31e82587a26c8d48aa3debeaf067a26669599fae850126dd516512e0cf5ab556b5582add7d2f665723a2244007ddc302f0ec29da73578a80c998849be2f766a334c7ade4dd46f37d648899da5cf7437af2d6e8d03d934903387c4c7e260909d59b546dfac9ffdce11fb92e5bb6ff6836fa0e6d0c5942b4660fdd68d3cc8a76ce0960584dbf634695ca75752b19067ba535e4779189b111c9a3e0ea877067c046d10021b0e60eae8d5dd7536b4474d8ab74679e2d8e68bc9208db5561e28d0bec177cda1e2f944a4cd97b6432033ce40063cbced6b36e486b096adffd699c9fdf58d5ec54bf4afdf52493fbfcd91e807da31ff675b567058697aa088118a6ecf1b7c7dceba3ba87d59d882fce3b3b676763ed658e991c4fd5746946815af0a2c1e96aeb27383cf6638d6d7e1932b3a028250fee18db7c46acd7fab33ab22ff91cf78029a4ed96494151652213fb7dcca0a8944568bf84aded113e20e6897d6b8f6f9fe5f6975c7cbf999d15ce5f8d50454d58e7a5b285fce4ef9d14758cf4a9619b17275fa66f2c6c48d44da95657708062bec9b633ba2df082766f549c5c1b661fc8a5f7b8b6699503da733a66df44f116c4a470b73648cb64bf04101e7bc1d048d230addbf22a5b98aea08beda847e33552faf771d9b181f610ce34530543096257856ea3a08276bec1ea40e7bf6957143623ef47b5c41e61d076eef0a5195431b49beab9fd7f07b1a153491a7250a889b26ce657df550b226fb94cb5f52306f47ee3af4627ef0cdc0c50536af7b386440b878ed5d672670abdb3ea3e3c3c031e67293104a4d6476cf325f6fe4762ce2351dffac116387baadb82f987cab7fe88ce1be7d44ccd572bfd29114d2ce4d5e90f4d6bf7be39ce25ab7de52815e4059d783564d518dd208714de1c524ff69a4ec5f29bb631eff605cc6f30a0bcfba44810a3a6fc263891791b51cb4be0d60d3d0798e38b01b9a21150589a436fb4df4584bf6e7094176884921bbb0f87b1bcdfb6df8aef8f58393800816c15647650448da0ba5bb76f7bf76c3be83aceab79eedae80e1fb46a2557a9485aa7a8053a5835e609fdf54222f5b43cba63c9508dbbd0e22953768f88e2070236d7255f682464d09c7ba12b2e8787a1bc889af686d2c355961d8f92f877bb09baef09d70b5b306047d8d3cb97fb06ba8d09bfbae02314dddf98092b6ef275743e9deb391995003d83b549ecd604daa9bd34ef311aeced5db504242241c0717f8302efedcd3fd43686a7ee21c73ba3c5af98c93d09158c9011e11bc4b51a3a4e904c4b6ced1a786adf310073405c27df6aae6d5da4398d78622ba9144ad09902da49b77046ad22fd303f07c1533f271eb82794b402382d2971f46c7907069907a7afb9e94dd4071685f91cfca10d86aad7c385e4d90f0d44d37588a8f1f267c1d8445634ca4194d1a0c5894a6d00cae3af3aec991cfefda59e3f46c0a6e2fac55b35259a9960ec7dbd1c7dd128368393f0de1e0994ba1f5b41762c22213f56bbf4c2cca458dd5731f9379f0651ba61fbf17a5861eb417e20a7fc9df12c6771f5ab322213ec95beff96dc1811dd0f45be8fb1ed93c2cc01e694620b550e45bd265fb357f52699cf9ca3ddf331fe4d11c5e97bb57631d9c7620b5c19562c85ef8e04ecd5cd5b713fbd94b6b76331a83f304cd8ae1a903ffa722cf5697b1e1bde206735656ce57254744daff8013f47f9aa4f062d8c5956fa8df5ee79d6e6ffbc0c47cd0c99517a6d92fe8ad18c001be4b55af7a6533712c6a2ccb7e813016e7cb74a94bf2a2ce9b3b440faae19210d43320cb81a6472d1da775ca27f2b5bbe5964271eefccdfa0bd6b163357af4539fdb5d5e2e7e1795040776d4d75b70928b8efa954556f4d225bd9b6f9e5a71a8e7a3ef5c36d459233c66650ada1c55dfa02bca3997f93b92028881d9c3ec0e7e1a42c587482b0cfbc77e8520c6ca0f3e5127c96b41056b7279d9e62358e39dc95e779affaaaddc8e9ee66ba336feca8b957ccb4f352c0d162390e3bde27b15132407c97c3a6b5f1704e1e559ee12655a71d7dce3711c8af907d7d2875e2407ff8c59c5457678058d3d00a7971d239c1b1c67dac3ff3fbcc2d8c8035e31040118ac46ba5110a16aedd0b7f731a4f86a63a697501a664946eaf7da6d3cc2a296f294ee765b8f26363ba6116e0ea0ef8eabb0f1e7cc429611194cf0bb66463d26a82dd118cbbd3f1040dca2f5f82ac5eb5df41a4658fcb34b68066c5708a4a16c48fd290b32e392e7f5b662f4e3fa2d79a814f52824cf737872604672bdaf80fc527deb1f690339c92b6c6c6c8635de5a2e1a7ff617d0f1c11bc3a3504d0de94d77678025ab5bea511d783df148e58b0793251db3b7b9e03bb201be89d5939c0a60ab548460d543d015082e00ad9d05418c327ebafbad7924aaf70e5fa6eb0be359b65ac2fbbcad495b17712e033cbf1853d1e2450ac4c8d19287074e76ca3d087d376b0f861b525d4949098dd4e3a3cc50118c8587adf6587ed9aa0352b7d812fe66bb64eb0c0f4d46822aa9c3d4848454d49b61cca24d7d6b82fafc5d8eb4e40e3665f24a95182b70b22c5f9303a49d1278f25de9855246c729fc8ba300fad799a949b9b0ce303477d22337d599d4c8441461d25725965183210a729fc59c4e5ddb45c0b9db06a09619e6009aa0653cd1e8b06d0e55c133d5022dcf91f12a21e9f977de2485f886c5133a8837987e7bc90662156b0250cc76cb03ad9fa36733ef371479ea9c1313682866b963f1f96bba8c658e2c6a10e5e29d8a07d4999b735bdef7f60326aa64fc198c3f2670fa4a44717fc613f1282fc324fd9476e6da7866cb6ce1efa8a1577088f2aa757584b8ade9f2ba34a2287870da2cc7704008b6e057eaf8bfe2fd0d6d60cf03e1751d2284c6439ee6079708451e64b1f7e7dc8400ae99e0d834a7daba6c3a8219812adff0760129e18a41eb0448c57a909714cd395933436e9ae040277f213e30ab7b6e7e3109642ffa051b3c423f6ffa7830c75d229acd617d6bc1f7948f09238f5437ff4fb302034fec1fed96c55c46c7d70d6ab3018c1a3d76120077f815fa67ec8815f44fd0cae7d1509d217a432ce904c778f201a508fdea4672e9cff797bd1d0f58d46f39396e148573ae9b2468e4ee5bd9a5abce8166333c524f0a104da2e3c99ddbc51fc6f4e7c628af79c93d0fbe61b1c4a72b11fe423597f126467a01ee6dad848f24abdfe453592f02c84e017fe553f27e639f88824d70aeeaca54758184f95f12d696291798046bb075fefd6876e8ef893f5b9340e21fc63c67feb6f03055f2f394a591164a61b1aab14c468998175b75974543e79b241dc69a6e346374dec5eebae154e36f29d17273e608ce69d539a5e4702f474bad66fbf3348f0c859bf884576faeeac754e290ec97e863526e55420da72b6b6cd209e6685ffb64e9865d00eb017c843d3c0cf3ab26f53f76316fbe009f0b2c4932b0694fecf1a148dbead458ca9f5f6d678d6c6fbd23fb6aea9e951914300eaaaf69bf35d4ce11c0349a02aa14529a083e701eac0177d4ddb305a9f9a5cf8bacd96327a161bb8b877813ea022d62bac8f0ab9eb5e9d145dda4b1fe79c0bee34c8bbfe866ba376d3a71b9809adda06e64eafaa6cf53fff8ed63e15525fd409e13b1809ae6e6e937acf858a59d2073b304171d5ab35ec92f66fbb2d4e34d46e886c3546c1026d0ff27821a15aa397dbc686540d546ea66fb43dcb9beaeadde6250cfe8e563f9033b432018c88bec07279c6a0228f3eb11031d3435d95c9c1789a5338f74aa6db2c853c87f8f2397f9067fa59774770f64b8ae42b9a07f85f1bcabbc6d3b3456a253bdb73ad3de0aa416589b722053c81db90e7b66a835d636615701e6869fef016bfaba9da0a869005ffc3174b605fdabdb8c7346262ce78a64aa7036960913edfffad202d664d1771018de43b6548a6672f48979b8e30017a93da2c093266306e09eb203fb37d7d54466fb26d4414ba88346d02d8811f100dcb0a3e50ae46247b986b928f12c1ad506c6b33b49d7e6955ae9619f73c79b72a95b053d53c4c54d36dceb8ae780b321aa41b5d61caa21a6c65329f08da522bbbb3d07501b39cc6bfbe4a2ef8054d7c57666bc805ed451517a1432b958141f3ce94752a67a17aadb41590037da8efdb251eb56de30b0e0e75adfbf4e06d4777f843a8d7c31e2ab62d98764217491d46960d67d3ee1213d150c28e75d1f440d41ffc3cf876554e2d4a354f70fce17e4c0fdc64992c32e785263ca4ffcab57d3d46d220627ed05f1628551e9843137996bc7a0b773e1ccfe5364216a8003757ffdc052d93793a3463baf4eef5dd283826f8510bb1f20505a6e61cb3d571d0f77e67ff3c0aa5ca91f6d68c7e0d2d79c649b091b30b2911c5c47157c9c531296eba681e039eaecab83722cc2fd5b91913a463ba9f693e34da60b1adb8ee9f4a83fa67e25f19e4cd6e19ed1381cba8b5b4591109637ae1f7f29b5495fc5f8057da565d937e7577735bd98fe626ce8568897d240f054ad69c8e0ca424d1be51b17d5e639253fb2fe6791e01edcf9c4f8404233d7f98b52c31c4996b6b63112d0126036ca20cf52a2da2478683c41bfd8fb5b34de59d5e87b5075e5e1d78ad06c6a2f6e662145be3d30d140b62c49df203350ea4412c97aaeec7aaa00d81b89f3b7295607840de2a8386f52012b5c4e6e0e1986565bc4f99b6bc10f3a2ab59783a8b9f3c696f741af0f51b6592c68ddff861fc7d2b16876b05a54eae9ec0e170fbf26d9358941c6cba50a5c41e77f72c7f41e0bbf6023f04f7701f676a64cb63ea1a8d373ee6a99ba56449699ccdf8a11dc7d840d695cd5ef987f74e5b16594cc8c6c2251c47b429281b6e34c0288c7242052ac3c9c63213f6ddb08726001e0afe1fb312d463db8722f1617972dc7f365de498027ef0b5c6d100e583348cd777a2afbfd60ef59969c8f88358b6995c177a7d7e69d86b11e36f42bae8c9af599d3f828447c31004000163bb74ef20f656f6a1c8159bd0f867f2e283c10656a40a397b2e514c19efb5d5a5f54316509801bd8208a2c84b2ef13e54d7b8af8787b826b50095a15e33a5e8e306454312a83af7869b7ba0039ca601751b580a9190435d35a8ce9d8e9558ca1bcea3cc3604f4e991aee79fd0d2393b9f87e8dac7782e837e1de5e88a7c79385a2b14556041f49c1113df43efd8aea14c4b651d713fc9989b2fd77ce13a98efef5e83cc6843d313117753d82870c5efec8cc6fd855ab6e0fc6d48c66874fdcb2d007db7fbb9371da3836eb23da1106283a20e32617bcaba574b7b6298d48334eaeef905ff348c2bfbc1c83a88d6915b644d1854161ab4f1d1db12e74de2853e48d1a10f9835c226bca6944d0de6a18e0e07df45ad72a7d354045a6997ffdee010e37091a3a5280e5db8aeea0245217a6f1160a6287d9a28c0eeabaebe755b9485da5b7ccb85166ed902e63200e5e8ac464124bef0196eddee6cfe90fce770b416817e1ca78494786bdaeafa3538841f74bbdb2585d63f667ef227287efa56c030c0999e9ead590f1ce383a138233235494ecec0aed97c803b4d7c4fb80ac9a3bcb1dd2bab51382a94195bee034c3f3d3d9efc44add83ec580a5cfe8f5942b1694b0ab3ef4b2d9f7c0b8634b056c6b6eeb946be1825fa452abdbc1545cd94774abed3fdc2b0399929298221030f6cd0a2b38490f5e4bfd53ee20de10eeb2ffacca980d40e0885cb91c94a4d81a61d863efd0f7a12da233e1dacf7af728950892ef887abcc5e4d08c6b57834a1e5dd1dfc69418fc681b47d8cd34c6a3846b0e1afdc7c7f9033ff817a72ac617c0a1e59e4e6ea40bd668c499f221c5f63700e74b68ba3045b4460f0fa60308cf8964d95237d888d5c1b1be0fa7bd2703eaeb0d2914b8d22cbd8693c16f21bb72566f38aa97e86f212557d40e10b285e1d4de0b153c8f91e168e9d0031bb7ee7fec5f0c3fbf15bc6fbceeae6dd363b7e9835b175b0be16a3348a2c2d07468449fbb2fcfca9e7d8b72b623355715a6a1edc87ea4c699ffeacb2277fbb5658a1eb12d0a7a93bf100ab11cf49b35c16a14044ac8e5bd69af05b252325f0eca41f90681b4a1ec399096939a96685926655a0c4d172d06646c87f35b65c0d7654882b79838f78c35febbdb378f9f28d7e6ba1c1fa191bbcdbf991731f546439a966e4f7a15c77367161bde14b731c9f2b91114fa46e02e70f07d3c40988e8140866ed3dcd98ef5524700deb75c1a6414016da0ce6845e936a8692b7beac01bc855a72a490c667c3b755ffaaa57af54af1bd07ae7b203be85f3653aa63cc5ae10f6e585c7bd8a5257604e82fad6c7be6f1a47eb665c1422c03d3263f351671a48bd5eed22077b8c16e706f009880941c29b90c29a11ef008a371b29200f32523b9847d911fab4ee1468bf98a49ff73703e2d9d7bbf6ae37459c3cb502541f304e1d5918518a06225b65f3b38b91f8e0b49a29ef9aacca369ce5cf8b45738e29118ab06078b885189acf4d0a5200b86cb2269dde90dfada27975dbe6ded12232c0faf7ea12ecacbdf416cff8632e48346478a75c0279c1920b7556fc6670704d5d97912c75d3a9cffe6891abdf747a6850ba7d9668e56c7e7ecc03c5c388e886bc984c8bfd9f470b7e4ea4d146c3c28e4f8ff82b9558266343036e6239a26f567f7633911ccc51522c29ff3ca36ad5b8cfd6ec1c86ae08f30d87a503c909e66dc278e9d14f3fae4bfa4813f315b1610ed76fc149d92f319044e813c3769d4978637e0ee732d3bb86e9fa584181f41d4304c07a1cb71d10f07da649288275a213eff161c536c7366d4c010cf9a4b1c2f2940607dc7468e51204c6983c554d616d48f93ae51e6a7769b3285785ae7bcba3cfb27879df1d7f1f18849a70814eb51df6d1d8cbe80b736cb38326f7db7a06e49cd4fe41b3f7a9156cfac9222ac23d13765e7f2910a365fb23a208f192cfca97b2b8a3de44a2d90d3c865bec109f4bdfb1d37216cf5f71a27c39a83b5562b0c06d76b46b2d8f5b15cb1765d6c78d065d24bedf72405dcb8e795fe183196a6b620f918a2dd7fdfac142aa653fd431ec153e3daac8f615a45b3a0d665d5fe36efb6e2f18b8399429e4f363748eddd5cd2a637e9a0a553fac6d05a3e2bd1b26f2f99433f8f59a3691417a4f35ff7d46a22e39e94641d942706850cb2843ff4a34122e37dcc8224ae9f6ab7f64ff4a0bcb0aaff2f429e4f0f5fcf90ab6a2c45e8f2408d9bbd4f60d6b01a0cf527895e1cd063b178b8973930b9488d81d3f0f7985b900d0a894c29642b809ef39294bfaaa5401f5ed50cbb91a047b60ad54b323a2f2ada04d19d6dbda02e0f22d4d6520f9db2263181c97c9bb74dd8a90adedc80bfd064eb103f67d02ea17571f870c779470bb6460c658da4c502b9a10c8050fc26ad5cc1ae1eb02f0d703d05b48f48ab8c9f9a1bd000181ccf929d45544b44e9a3cd0bcd412ad639323283ed229e5486a2a93babb165880a0a7329834bb51a0631cba5caa30637ca3f07074051c608b7c7170c8c415c2eb88bd6a798bd86953ff71052506ccf0e2357deff6cef24de5b7f68a17082c08d096e43fbe727ab0ab1aa27a703ccd58168039e50dce2d400ed7f2a217c1eea7b29455fbf910d36db324d1c6b53343a78484883ad100a0b5b28c74ab6296df5bf8048fb916e8ddda0ded3f5b08d262b9b1cb1ecb149c02a21490ebebe8856c844d448d2a3878dcc930c3c88d9addf73917e9d3f878fb12fba3e602cfde199a0e69eab56e3d4ffa01135b3145baa613be01f0b94af5bd3b8b432339c954f52b8551fd13790bc1ee18be226b819d8001a3da8e097f84c166e4002e4c1043d3a3721f05105cd17a278b9509d7a04826e8a5b4956bbf976ffb4857fd88da99cfea8d2e0a1c4f52f71f87cbee8c02fbf59b12bdaccb67d0b95f0a56693eafafeefce1953d708b56532ed5bbe12626a3d041c031b48a47b34c504f7dd57e21147b920c058385ddc8cbea5332086c269b0d5c2439f30fa431f88d1a10e25eba0df70d8617ecd5546314ffeae9c4baab872ab82a45eeaf0e1e1533e8a6189c324f31b652aeadc52981b66161313999c5a7bd7c79ef4ee55c7cb00ebd9637ffe01924508a44ab72ab16b70b8b815ce7d27772db315122f4a5a7679af5ac685c26320a71cdd8066b19f749705e2e35d1d9166ecb066053dd05a759270e119944cf99b918cb5e4e6c931031ae2eeffe349ac246c92174091c687c58879e1f05c43b010f7ec3f204c106cf60740b0bc2d355f57bbaec7d060dedab9aebaa4094e72ebffbf61cdfb7d69fbd146daea59339fa83c19c5f75b866af5e7f387740e675e1e2ba29c261d9e7237c6e9ef1b39a8fdacb44de0eaff5f4f9e3e42b75d0a37834eab0cf47acf65e882f0962e01982e783c0dae7efbc95dccb235562e5a2e04fd2b4b43388c0292e6e8198c6df0348920d6e1c8acdd2e892d3f7aef7703824dbb08695642f0e444ade6c4f1ec1e267feb5135cccd50fcde643acb66dbd18f507496957ced435e0db0a8e8441a8e2ebc365f995c32399f7d180b6faeb85ee1921b95f82f3194bed7d157e842257d2da26dfac90f32fb53147e48e232d5115f1cd12b45c55330b29775ab776599afa504b7fe114cd7fb3ab4eb6c30becb82f448b284b20010bea918019af99b2a9ccab1585aec19fd1abe8365a6023f96dddf1a37cce2734bb6585143729850bcd811787bd07cb5fdd57cc987f9278b7f5ef3c7529a9b6d20d18cc4446f1036cf7635da6732986c38df4785e2e428f14b84957319772bdbb7d2d2d20321e522b1ec6c807f3a3f575643d4b71e1bbd1e843b5816aa68900298f5058c65a9fe1022978a44a77bde2b99e221de97cd7fa6a2ea440220bac20e3e4c1e4224958aca15681d3a18f74218114c3e5eefa1fc16de8c07f1d1297b0e772d05f205337175c1dbe88dfc876dcfce367304afac68c41b98ed2ba3f04fd1b37db27dd5d9c9aafaeadfcc44585908ea655ffce1fc2516b060256777e8953e2a6861ec4460034691aed001ea2971627615fc7972773d6a8c343117bae3fc68cfd1f187c478c0f52e86b118c65c39848a8c582ed908fb1242ad3455288cc858e52e119d368e00783c2b8c2916ba564a3501326baefe1dcadac8b4b8b666f20a3a245ca171b43af", 0x2000, &(0x7f0000006d00)={0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, &(0x7f0000006780)={0x90}, 0x0, 0x0, 0x0, 0x0}) syz_fuse_handle_req(r0, &(0x7f0000008d80)="9653e1f8dee4c92e93feecece464dfca3aaf6d1c3ea7734b3779ef227f374c39d5b3c1e148b57cb85ff5c1925f1145af6e9835ce55560c4f8d1c728f26c8f4bb69844be49a33e9fb682b820dbca0305774716091d2a8cac8865e28b976241e25967857533490ddd54e004cb56e0c2781b83680a86025fb55e6ca7edc0290dd2b3a24c765fd70403c8fc6fbb40bdc122911cbaeb374795f05a416932c6399e1ed25e135cd5c10123fb6d2f2ff67362a4b61ff80b3e4f12094d63a9ac8de22f5b3d6cf0ca5a3d54e35205e0d72fdfeffff72136209b09dffd30ee3f8084cb98eba60da5f6096397ac194c5f5a161aaf94d9d3a7f924355e1b341d4e2b3a30977906408489387a1f80dcf3b060a5e0c399c42b81516c212db69656638a5d0587c83f6eee4caae4421d54c25b01251fc33967810ec579bb23b9c21ade2479eee6bea6625af17d0a32076200b8634d52dd6e390414e228bb27ca0d7e08e42b68edc2c8692545703d43fdafb88785216ef0e15359419085da1a2487b996ff17eae18ea603900ecbc2dd76303671c92437b409c718b9e51adfce6e4d9b26e285bdc6c0ada71b3e83494758145b2d672d737345059280a8e0e1b72ebcd3a27034e6b72f3ee5dde9b9f3e0e68790654acdedcaa3efb3364d7c742d565a665c4782e6fa38ac09f82a8aab4af987238a1116dd4a4f13740d2b7ef4fa7f295cd901627256176e51842690f776c910c98877343672e9d2032596cc54a841261dfc2b78a1194741e8c28968c7563ba95dd43054edafe341a12153ba7d062c1ed547fcc6efadc2ceb1209da301dd897ca41236ade90f8db68e32ad66140e01bb46b2be3d009446c37713a2d0655e00f9ec4cd72a6955917dcf4af92ff761f7654eaabf88a6228e4c9f77661bdda59023d3d2cce02c35e878296075642c97d647f76f7435b3837a921bd6f388497f74f105bc02ac98c33e17b3b028591ff5cfce06d6b4d97f55ccac9b07c3f1eebf0c1eb1af0951075ed2a296e063fc09a94f533f7e3573cbc08e462c3996147077f652ba219d0544099b5556e52f72109b954af066504ab4fc2cad36c0e2fc7028f5ec488ccf84d5270c37665cc275b2f0c42cca7606596391a056c2dd7fc41147fa4716e52bfb5891007878196d9348b48719e8de58fbedc955f0f7973ac752292f787e2f6e077684779666aa44d2f11d1196cacf4c77456205ce4b176b2775a4eaf56ba7589f00aa586244d88fc40e2be4676d76a9dca23195006c0be5ed7214b6b9b04fdfdf4bdf9a0f4b54e1114f8767aaf2085cabd6eaec4ac32aed8f9633f9e7006aacd70311cc7eb70dffbeb0137cf2f9f9e76b9a5b9ba74d0930559d0d9588558c0823ca60a925ee2b9d9e0c1346c5a5a0c6e44285f4d642a5ac26c97fe975c4f8a26d37c597a700114465d2eec58179aca75acc14b73260957878b978aff0786793c3bdf9f1bf2defa1c4a3aed5c99eb8b1b64bf455f2054016b666a97854920533f4241771638d1049f3f1779260935e6802f5913d0a60a29408ee424bbaa3f9f536463cecc9fe23163fb1d1428c418f91d05d8de2c92a9d3b4c59ba3deb2f320372fa2f3418f3d1d3cfcfc6caf8e1872009a857ec4134de41572a39c5324b9dcb878c95833631bfb662e39e339bf1ad06cf7d1eae4b2fe8f7e2fec9041bbd38a635bb54a17a7d6080f19da7ef3099be97bd6b59d5339259de650cc11d694fc12450b13bc95ae2362927b79472e4330504ae4658bd489d54476b33ac371a986290f32a2afe2e46b809d8beafc7e0d5493e55f0a267a37e03999dd557dfdb4d7c59401e0a2c7ae298ee986e8936a6c73d3113298aa69cb6f1d19073bfbd87789819c9151ea6ecd2793c106fa5fca7d2c788ffb4b26dadad1334ca7be7da5c823063bc1c90e693ff9014b4a4738d3c20f444aa2262da239ad12f9658b7bd9b09110476f769c55925ed02ee3d1de6f851359b7714aa7606e663a5f507ca1de1de0d82889ab8c0645aa2718a0bb143be109499b950d2968add6c77189c1316a1cb5fb48d43e4a514e574cbe900006fcedb09afeba7b112ec81e8980696789d4ae7f25d9857c3bc2a0c122ddc80e1288adfe9add682463c2556d813ab3c7e4e332412d4508dd058089d8e6586f2ab472912e51e67de1675c1492447a00cb886c84b82204167bd112ea17db259a1525ad9d524d7e3abb9b1797412ee8ba604018c32df510b83c2a084c8548fdda3ba7563383f8c6c4f19f4e9828e900580492bc1a07534b0c54c597dbee18917b9317943f9399b3fc0d3c357297808de2d4473f5a3c4b802a4241208034ca5c3452e714c53cac7406b4d5bca993c937987a572790d8529bf9e961e03173067976c9a3aa14046108829d7c32106feab5fcc576be7b815daefe64dac84bde39c38e9ee9f58215d30021b26bddfa210b115a34deb8ef0ee7c9a1aebca06be55a857cd61618ec217fbf5f04414f0f85d694806562364289b612a6c058c6de51d3b0739600a4fe03ad2516f2c2b87f18571545ff6b70461c92ac9bc8f80e321da15d547ebf91086d33f8bab4cf0b3888fd2bf1abecb9a9af985992f6504a3afad4aa61018e84491377d9754311b4dd90fbfc379ead51dd5c922b6874d483ba19c575ea5583a010aeedb35633cffd771588f6e6f891cc6c05289b939fd4eb5e01810675763fb3b22d4d7d18d4ac0d909d4dd198302b5f9e47d83ec5f123a3e43d55d031f745d45408684ee61fc33bb165bfad38f36e6cce1a3f22d19107bc2b12ba35fc359939cdbfcc00d42c0613765dd89f4e09779986925c4377bd07fe3bcb4fefe339a364cc48c55914490e2a07a644aa021db434f9c549096beb0a87f9369d774f95a044408b244c20cf29059da6c25d71a5011c5af94b816461431010cbd7e8164bfc5820e01b4d28adf6c12dbb9d0bc4de536d112d47b875f5766fcc5a66c63a043399b7438c007ef5b9a5b7bc34887146e5c1c5775980b77bc49a8cc4e96b26ec113f802f42100ccfd0e815fe94c64072c2075832b3042e2845b914523b220b0ca52e1eb98362562fb66c2d8de93b67b58e02e1a83e06ba43ddf892d89b280d3f865ee2970d9d306440bccbcd3daed4c4b35fdca85474a3acb69f2ac9f63a414f88ae0067cd3c300ec67a53ac9f9c094375f375193ff643164c874740b90df1361e3cd6330763f84c7ab1920502e86a3b61333c1fe3be427529409e0d1fbb74a6c8c8385acdcba7e71e1bf6e4eb9a3dc6531cc59e3a23b0fb9874e4d76a51fb5a9a84322dfa6c34d03e3e321cdd321cf504eb6708aabcfbe44e62a6874119e1dbf6408f91eda6bcb64486f5a3efe72b9d3a75236e5633c1d6bc98f78b6ca81f72eae3c4729c7073793343b2e3da2e6b915d575b13dcded805de0305b75ce9450004ca758b2b6db9fd337d41127e2ccef7c54fddb7131659a679f16602384b3df53ad8165981b34acbf7bb898ed5d3c6bb9164bb75c2751204e8fad5914328035864c40eca5baba872a92eb5b2bfdd33d21bf4b3280361dc04fa257cd4b3141248f72821c39658cbef23dd249512513d1d95bd83ae72cc551bf05eeee7d534dfaf10b53ca46ecade06b0dba55ebb58afe31297e3787d9f5cafa3492db119e8cfd60020db919e0e4fb70f0fd1bc76b95b72f421178f70712a3bce7a09820bc16bbf59d0332d62be06090f5508eb324436960fef05d89b5892c73d3dbd921b3f7ccce17b0148ba7703eadb593fbae8de4d208f45dc10f400d1b68a430f89ccf17a67ea7e377660048bcfc60cbfa3c220c7986d16f8bd43a1632f6d00d8a8d9b83002917d936ab7910b124c31ae9b8aaa9122b6ff4f6fd9392e0e65847f73fafbc0d8fa1193fe86cf45e3edfdf96a58839bc55fbcf7c1ce8ad3ee2cbe80f0d5cbe9d8013aae378a5990937127b366101acaa14bd8d05fca519ba8e8b6b5bfbe2091c47c7854914ca23195d7bb2c2c95aaf8930fec5e9119117695a6daa59c98fca7389112feb0b4adae232af7f6cc4e222c44ca763a1b88e2249c3e57508bc968ef7aafca551ef269bea4ed607f0b6a75fcccf396f017eca4332f4aae6328a6a6eaff5e484ad3a44340b0e23422a82d5806cfe9a7193b6b6b739b5fbf30a90be438e8a5c172d77d28d010f5bc5fedbbe8e67e535187e2335be9da316d9401bca4fcbed9fca7e6630057a7b662a4c88f05556b78b4ebe99d7967c7ab43bc1b43a91c7c057b72ebdf4cb36251186859a1658d1d2f552470dc5ed424e6f3b555539d839f90d447222e8787076b6dd0ff1da3c3af28def1c24de3ff0a85d829ebb14d10047961315213141d936372458b9385db222837ed17075ea61a90ad4d6f5498025c571db7ba3cc2831fc35b8c647acccec32c453b011291b2a849a6cca9e1616b246cec3ad07453d2487962ec63dd078585373378c7eb4784ae02db47553f4a240c82303b5ee2caaae40af00c1e805689fc9641c0c77301f3e3fa0fe53b91fc2f06f0c439b84abb2282ab307ca76266572c09bc51e348a7639f8afe3f6bae27a8404f867ee9a13965f9303958c645f33a0caedfd5433ff6c795e573f5bf070bd137e77afda661a0644320eafda5f991caacc1e28c66ecb1033da661a2344a1ccd779b67cc8475682d9b30a69678761b36f1b688918bc391b7f5074415aab74da6542cbb49a95359f64c3b3373b4954370c604c9d10b8b42228317e3e53f87535dd634bc3574e64c4193188917a5f3f05d62184fde854410b0afde444c613063a5cffedb7cc55ba22423d0fc0cdcc4ac03b6fd3c4c04220ffcbbff2f22aa836ecb02fe8cc4c4691ddd5c6a2e08dd0037dd33f9e0c1556f585f51beb08da41b288e1b0f95f2747421241ddaf0dc345dbe41fa7d2ae0c19b6f5760d9fbbb460f52e006f75fda434c074c51ff0a0aa9e0aaf39bd7409e6a8dd569afa79362ff6d2ff29954f8b37a867fa6aaca071c22180ddbbadf01b66811d43cc3025193098931796f6e34ba098ebdc1f8fa064e5e1c319b20c92349ffe05e425f08c4a7521c72d910ee5d6ef58b1b396d57ac0ca5af0db91f0917a4e622bb20a28ff74eb75eb2bf754277b4b0583ea4749b803d87a514708c2b592d12d2bb712886cddf6a437790ee3660710d0ccb171b1dae436905f313cdaef09dcaa95aada9fbfae8be2ad4b07c182f8e5f183fa35f2d44bab5305f91f439eca3cb2310376d09b89d5d7502943550b09afe17f37823ac4b140771e9ebbb604a97040527c96dc4a69abe95c9e2ade6b7fb54146db7d1c3c65e994e95d7183a6f26c58bd1b64e2d47604af405b776cc139e813538b974a0b3b2e256f72c89da14c0267b7963a0baaf42ad1f4814cb7f18b900243456e8f37ff8f66fe05e832bbf1803b1f25c4cf73971fc85c472eaa7470ceb3845577299618bed46577e88efc4a1aeeb53b11fe14d6c14b08045a09906be068787fe418c8d9d4748285f8158cedea1625b7c4ad53db588a3728c0cf4f8dda27b0056a1ce1d4555867a694676c8eb359ec4c11f603358fbb7ac483f88f899f123a0a6e8dd6fae7e019a9bb545e93a1aa23bc2bb43128341098d35c5b16f60891864a44ff7215e914dd365ad842f35de0ec7a35667f8ad456b16b9ea97dd10f2a72a4a9a6ad0835e6a9880e0ea32bb1e641028b601e571e2071a97d6a4ff348fe3692d207d35246082d239b0568d680eda958977242d58ce0ae4123c1ecd883447a0973d9196e4a06b604291f660d954707c9430e3afc5084850e756e20603640afd435c5702e352a77960492b45b299c0a1f5ff06fb60f81d39f0d280a23e272d92fd7b27fd6f84228b3b24a1506fd0dbc44a019220962679c298cdb512d86d5e24547750239bd1b93e92552f3ef7be00be5f5f66766f62c85f8a57a4e5be7751d83218cc6dd8080970cb51562ddebcac434236e02b260c31c110dd2dfa9a925946af5e3b80992856791a611edf823345898c2b1cd68ca108ddc19b0df63c42aa26e3c105ab62b2397ee368da34a7ba4d54d44694528fad331b15980f7992d45d077055fbbb9ba142990ed0c247ca57a01ad637d81b929a6316088a61f18c800152b836c33935c9b7f6a07287b5d18e5b110d5be42b55796a4e0e2949f1b5eec2284d58f74248149d206921c608cc8e36c04c70a3b74cd7575fef2d5cc9c6e7d2791595b2b9ddb6ef49c2cbe740c8baa19032b82b6aab8fcd3657bb3c5b51940432ac3e808b170507d846c38dcd158a5fbb704bb0c22021962c29399d3c2930035831f8c0f164b5b947e87a1c4593aacb02f71365388189884e10655815336643aa85cfc37d736f35904368ac0b9cfceed691859bf0083d9be2860e59fc81fd339b2b5b48622c121c71243864f92cdb076b4643f45ea6195f81bd6b607426ca5af43cb1b542d09047ced15b814a94340f20c2b3687efda42e775fc04022d1e3bc4469ce5837ace06ec8c48cb997d09a47a5a9202f707ea0e071e1374f98a879b9a6ab782c678abf12ea2ef95c050f1affeadf4f3e6825502e34f60d20fa98aff763e1c9a6c818cea9911045bbc5d7a07d5cf13ac30b87e89b0186e1986f75105a39cec44e0f0a17ef10c84d1c16b0c110996290ed46936056ee2e28ca90322088a317c84d9314c89af776547f50d5e9d2f95837f421e981efaa1a681c5b6dc13cc97d1e10d5bca314c473b2b5c8e50e2a8eab18ef59a4ed32cd5ef87b8578fa20424de1a937c2c17c2d38b64c51bb82bc93fa91d2b7c4f572a7c9c81d23717db3398412b1cd66af892ad314993f31d20d9c2a1cdddc4f015257acfe561bdded7bbf7ffe3302a7531e49d97e9fc255166d496f86a5e4d8b4be3064d183f6da7bc12b66afcb9123b71fc3dabb6bf752f5cd8dec40cabb15beda27823e72efd96d216f40da0ad90a67e93c05b955eb5239c9ce9bbae439637be5b11b71374745d9f33592b473f8d43fdf3b740d976afed1226894b3f0a3887465fe39113fd10472e95ef159d3365a3080bf10f431961f68e0d414bb7f9a6a6c288924d21e4638a862e78f0bf1d1d8d9cbb17501a9e5150f516f81a888bc6489da6c80b00d065ce941d7cc2ca3075fabc57891ebc6910fd8b5918efda4ca5859eea667d5f27581bedbed8cbb83366d7e3d5a21e50db1cd3d80ab4cea4a3256effe9a902b29cda6757d926cee9a514b859295c0590af218cbc30c441bef3c3f4236a557337a21c089b298a4b7e9d2f6f526e268c8cbb0d1e1e7076f5b0e71aa8238dc2f3b3092c1acea0a3fa2839b4c5c8dab8303880623e98ee423a858087e39df49fd45db27cf0f7d339df3f1911ad143a93ed50907e28d7e9d55c124f199b5b1c072c4a53fe3b778cee0c01a7a639a5f94f796164feb035cc8ad2fc2f887886577cd31efca4617ccc29eba84976814fd38cee098f6e7b5045422521679ba73db51920e711ff670482033d0b793d35499a2b99cc6bdc86c83a367ba723767b69af4a15b7bf9b1987ccd59dc91b892f25164fae725c85e53b8332480dc6cb85d2858c23d417b720a06feca5dc007d66bb4724d45f30fdcd00329ab5c483e3e7e52f08e3bde82ed390e11eeed52b1febc706e5ba38535a37c1cad2a776faec7689cefab86eb3d2e851a6c1a2028742134ac0cf1c97a6164cf4914271d7ed29d9eb339a9d91f65f49fa90de357aa005c9d82b9c79d08303e3c58ecba42d8ca46d801a87bc2cbe382a3b8e54d205247a9b8788b7cdebbf734b145640faa7b30383dc2e1d26985f0bc0d739ca3b809cd6070c56a30231d420310e6677c83f4e7134ec519aa0627decfdbea9608954bebb899af4f5e297970f118d8dcd3247440083852d3b4f86eca30b2ca74fd3af1cd68e876abe8d3f29a62926c9089d976fc25bb7b7637192e5d71c13b473e1652b546830e9e5a6c22578ac47988a652192591b0d835225a4c50f91da7d0554e63a7ea04f6e4db55cdee5ba3cb9c0e92b7ab0bec62d8434e1806f47e69a968adaddd2c05c3bdd5b938b97aae30675664527f6420ce3c371b9621d7e162b503c16eca572f347493b3cb3830b8abed28d293ea429342d9ec42bec9b9f0d5fca4a314cfbf6cbb6a7147729dc46aab27405b92fdc9e194a8c7ac707ca41fbb85069246c78cc6e845e55a70a9da4bf29645fbc087063fbac3b00c4bed518143835b6d140eb957f704eeb30d096b4e7940582d86e4a06a5a221404695c2869e7b89cee9ed7da67cc4969cb485ace8c7a78a4c0337855cd5f44ddd89d38b12f540b4b0d71df1022f34a56cf0f161275165d9a558f0c2921d5a1adcc8b19c7d2e4ad595ee6ec7a2b5391d1e81815bc7cc00f8bc885ca5e85f89840564f7e86d7702479a04b4a9e5c505dbf6917775aadb28e29451a663a555e86fb1634aac381acfac5176c28eb19921c822b2a72f1da0a0d114b00ad48aa1fc2af7136b8713fc99adb7b8491a6b2019e7d71786245d69eff731351dc385b5b66f05d84a022dfd6c54769d0b43176ee8671420ed54cee33e2a28565e36640ff921e04c065488359d6eef0fb1d2488f88160b83c8929a96efec534375ae7baff73c6ba9690ac2333c661aa752f9c19f6d600d0fc9e0e6dcdf663181ed7159d489fb3efbb046841291d30ad8d93e91b379067fa1aa1489797d08e40f5852ed63c9e507daddef1fd0c1ef2e54047a6d87134cb263c7c319faeb7d1cd9eef25ccff088a40b348c787f1be497c95eeb2d431e16b32f1b110f368f9fef09c700519d28776eec6883996f4f0a47cfa60e948f4b8f21d6dbe6f3d0a534dde3cfdd9c34eb576cf7b238f99ab5f5b75f2ebb13f8ffa187c60925b3cdbd82c93268f7e098a45ec96786ce0af8006ad21f07ee2fb19311f2816ff4e53472c2a9ae934d400b325a10763e5b6aea437a4114fbd129ab49346ea3df01df47181a882da3eb06762e5c31f81f67affa612a1da03f6c7a22570ba38585bfa574a7321f4a83f1131c2bd83714da0bdc9f2d488a9e0aa9dfee22ef9249896505ad86e19f13593d3a3dee89cb2e76b238c1bf23da34eaedc26da2b515e87182d6a3e644c79c9e0b100fb8538348364e519574ba570a57956f21668d3d29a81d542ff957f7df5ebbb12180eb9096ba3e165feb30770d0ad93f96428578504d9fe4ff38e4633892382bfeaa1847e36349054eb63b233cbb7292d55209e8fe438a04fa83628e13f5071a9d7cf5167fbe769cc61557878dec4ecce664aae040dd21a933da94bc7872ad34081144853d3da80fb4d0c4496c3d54e671c3651cc7a55c0c1bbb682a4be9767315c64047da3ae30e78e4dfd2d1381f1b205df563b81c7cd18fe1a25f3b73b52230815ce3fd87b3bd01d91ddf2a8d9b6ffb733ff9246998ff1ab9559ed8c46ea9d900133b98ae119a930c65e150e5a1ccb243ea0d93c1114918ae02675fd3569dc99a0e6e8ee343c60319f0fc2a966faa8d7fb5534d291d1b310bb64c448ba169f91ca588fd703c2ff602f430c10de06f3a28009d3abb43b78358cf4fcf5fe83cf97b5a60464f5d70a6ee674867b2ffcf3f3b5c8c0fa68d43f0bbd305023f0832835e06051d8abbf910ef2b3bdd0f225a28b420242190cdad1c6604515e8e4debe55dc38758c47680e84e22646287173c8f87332b51243178a4f9bea81939c999c1c9305ccf009ee6b21172b75906fd6f72b74e0650fffeb0bbfbbe023bd918a7cf7f275cfa861764d1eac3b167299376c54283ee43e27ce82fd472cc6267dd96925593b6278fd4733284fa6a9ab9ee09f30d7eb70aaa8d58a2bd9483954bfc17fb0e75e22cfb610baa32cbb2a6bc5d78e4d54d83e44e98b86d45294b701ba98bc655b6da2d58f5bc4889864446ee6b8f9cd8beff125285d9b6d792178a0e381e5db3e33f13ece40566b733042aad2245dfbe9142d1d9260156fbb5f3e672d30f7792bea4b25e0822b8bb12ed6ca79e29a9009b3fbd3aeeebf278d6fa8a88b043db1444b6de5fa71d985cdd015c27cdd43e7ad623c4f8a975c9dca16af6aaa305e697df269eaa29703ee01cfb538bdcaeebcbb23ea05905997a249f96bc60119adc67cdcdc4c78cb4c613833bee8a960f0c6a6f783a1c2f5b4f76a73c34146d9b8809c7c12bebf231c8f41ddef9b74e4f59f7626b6b738be03eaaaf4644013d03c0335548e1eda8f64d728075cba4571c75e0723dfea9dcf0fd5c9207265bee8e0a41b93b1b980b9a918b1443c91b8ba4ff064edb43c64800659e286f18a598349fa004579d23ed18e61cc8f2fd3bdafa6237c186f02535fcb3792e92d7814aebefee1d2036159f291b57e7d09a561d508f3ce60bcddf79492e7ef757690e1197365e9988afe96ad4eee6a9a8086af7ea7beba17f6222073a76679c9c614454c75f98db1c73226950643125092df669e2313323eedd2bee2a3c01e52f2a6bce5ffcf1c0cfb95c42167895507c95eeba4a4f0c8bff5e8274a91ada64d1ca2c768b6cdff1c83ca0ad179971db19c35b50ed22cb3528e56d64a72b77ac2718c34110189a54316bfa6a4e01a162084d4170afbb1e49a648d0ae64f1fb84bc4ee45c168bad3d6cb4061ebedbb11e0920c9c2a3c09e3ffd2d98803b6f044776bb96a21dfa92cc765b18398a956ff8b32906af9b420e571ef22a8c9fc67aa05e4ee953c608e829ee826130e03f8f2bc54f350a2fb12d71f17ecede0c7e449367fc33d1e3a636071354c38bb1c2b4b33e45c48dae7fe55dabdb25c311ac810e33a6408945ae6f1ab56c56276de1b96bc749839a3475f0dbacf59933c04c1a351b7bf0f5e174ffe7e63cd54ea6d55eef51c6c885775088218e0a9838349f5f9fdaf54622955e93b36a5f05900d05e7ebc0f98800a4f63303b6b0e62676f43adcd1b476513784f1e1d3d31edd938738730fa2e5623cdbcac8f48a7183d462a1481e686edc5d0788dc0e7dd595747875377346e4f36880fb156788e3616e2582fd421d8e555abd985f5be91fca492f8cd3313e09e60c156d0e27f9e708783544b64cb4560a7fce9757490cab10ca1246e07c0295f5d9a68b1618985f522e3cd18652213db304716a688d997a696f9792986c7377d8d0e9f5015ae99cd3f14ffb23dbd3ee091d4e843cfadfc84ea93e7583fb6f813aeb8d6fe61aea9252ead7004c4348947f7a22831111c294c24f1833facf619951752e6afba5b5a62e7d15ccb6585fd85fcbc5fa10d177656d272b38f7a835fd30ae70f003258c56301664a2844d155e4f603dc15f86e92a468aa819340ac82e58927aa8e0beffc13909a56c579d6b61355f2eac9a7240dc980c79c31dddfd22a92b5993883a90f28ea04eed56f19fbd60503872b3521835fafad0009cb09d7e7b8815f2b134b95db6e5c0cba3fbf47f19fe9669ae6a1254251a19974cf38e34f5c59e084d9029ab1012c5a7033f606ebc8176e3f7da2ea70e3ddf4adab71be3e173a2a167961629b5c863df0943f32595d363a67b6c631327696148ae4cd283794b2ba5933f155c680523ded3c2e4c34743d3a75e688c1b82826a02d59b7852b430a794849fd090914093bb9be6f3337d07ab358e40794157f121d90afc1ced7", 0x2000, &(0x7f0000006c40)={0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, &(0x7f0000006b80)={0xa0, 0x0, 0x0, {{0x4, 0x0, 0x0, 0x0, 0x0, 0x0, {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x8000}}}}, 0x0}) read$FUSE(r0, &(0x7f000000ad80)={0x2020, 0x0, 0x0}, 0x2020) write$FUSE_LSEEK(r0, &(0x7f0000000000)={0x18, 0x0, r2}, 0x18) 19:43:29 executing program 5: r0 = openat(0xffffffffffffff9c, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x1800007, 0x12, r0, 0x0) preadv(r0, &(0x7f0000000280), 0x18, 0xd9f, 0x0) syz_mount_image$msdos(&(0x7f00000000c0), &(0x7f0000000000)='./file0\x00', 0xffc00007, 0x2, &(0x7f0000000240)=[{&(0x7f0000000040)="040832090000ff01e66174000404090a0200027400f8", 0x16}, {&(0x7f00000004c0)="dbed7d4cac17", 0x6, 0x1f}], 0x0, &(0x7f0000000080)={[{@fat=@nocase}]}) ioctl$TIOCL_PASTESEL(0xffffffffffffffff, 0x541c, 0x0) 19:43:29 executing program 2: r0 = syz_mount_image$bfs(&(0x7f0000000000), &(0x7f00000000c0)='./file0\x00', 0x0, 0x3, &(0x7f0000000200)=[{&(0x7f0000000040)="cefaad1b01100000ff7f", 0xa}, {&(0x7f0000000140)="02", 0x1, 0x210}, {0x0, 0x0, 0xffffff}], 0x0, &(0x7f0000000100)) r1 = openat(0xffffffffffffff9c, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x9adf14bbbc0c6486, 0x12, r1, 0x0) preadv(r1, &(0x7f0000000280), 0x18, 0xd9f, 0x0) getgroups(0x0, 0x0) getgid() perf_event_open(0x0, 0xffffffffffffffff, 0x0, 0xffffffffffffffff, 0x0) mknodat(r0, &(0x7f0000000080)='./file0\x00', 0x0, 0x0) [ 374.049636] FAT-fs (loop5): Invalid FSINFO signature: 0x00000000, 0x00000000 (sector = 1) [ 374.117071] BFS-fs: bfs_fill_super(): loop2 is unclean, continuing 19:43:29 executing program 5: r0 = syz_mount_image$bfs(&(0x7f0000000000), &(0x7f00000000c0)='./file0\x00', 0x0, 0x3, &(0x7f0000000200)=[{&(0x7f0000000040)="cefaad1b01100000ff7f", 0xa}, {&(0x7f0000000140)="02", 0x1, 0x210}, {0x0, 0x0, 0xffffff}], 0x0, &(0x7f0000000100)) r1 = openat(0xffffffffffffff9c, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x9adf14bbbc0c6486, 0x12, r1, 0x0) preadv(r1, &(0x7f0000000280), 0x18, 0xd9f, 0x0) getgroups(0x0, 0x0) getgid() perf_event_open(0x0, 0xffffffffffffffff, 0x0, 0xffffffffffffffff, 0x0) mknodat(r0, &(0x7f0000000080)='./file0\x00', 0x0, 0x0) 19:43:29 executing program 4: r0 = openat$cgroup_ro(0xffffffffffffff9c, &(0x7f0000000080)='cpu.stat\x00', 0x275a, 0x0) r1 = openat$cgroup_ro(0xffffffffffffff9c, &(0x7f00000001c0)='cpu.stat\x00', 0x275a, 0x0) write$binfmt_script(r1, &(0x7f0000000300)=ANY=[], 0x2343a726) mmap(&(0x7f0000000000/0xb36000)=nil, 0xb36000, 0x2, 0x28011, r1, 0x0) pselect6(0x0, 0x0, 0x0, 0x0, &(0x7f0000000240)={0x0, 0x3938700}, 0x0) ioctl$EXT4_IOC_SWAP_BOOT(r0, 0x6611) 19:43:30 executing program 3: r0 = syz_mount_image$bfs(&(0x7f0000000000), &(0x7f00000000c0)='./file0\x00', 0x0, 0x3, &(0x7f0000000200)=[{&(0x7f0000000040)="cefaad1b01100000ff7f", 0xa}, {&(0x7f0000000140)="02", 0x1, 0x210}, {0x0, 0x0, 0xffffff}], 0x0, &(0x7f0000000100)) r1 = openat(0xffffffffffffff9c, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x9adf14bbbc0c6486, 0x12, r1, 0x0) preadv(r1, &(0x7f0000000280), 0x18, 0xd9f, 0x0) getgroups(0x0, 0x0) getgid() perf_event_open(0x0, 0xffffffffffffffff, 0x0, 0xffffffffffffffff, 0x0) mknodat(r0, &(0x7f0000000080)='./file0\x00', 0x0, 0x0) 19:43:30 executing program 1: r0 = syz_mount_image$bfs(&(0x7f0000000000), &(0x7f00000000c0)='./file0\x00', 0x0, 0x3, &(0x7f0000000200)=[{&(0x7f0000000040)="cefaad1b01100000ff7f", 0xa}, {&(0x7f0000000140)="02", 0x1, 0x210}, {0x0, 0x0, 0xffffff}], 0x0, &(0x7f0000000100)) r1 = openat(0xffffffffffffff9c, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x9adf14bbbc0c6486, 0x12, r1, 0x0) preadv(r1, &(0x7f0000000280), 0x18, 0xd9f, 0x0) getgroups(0x0, 0x0) getgid() perf_event_open(0x0, 0xffffffffffffffff, 0x0, 0xffffffffffffffff, 0x0) mknodat(r0, &(0x7f0000000080)='./file0\x00', 0x0, 0x0) 19:43:30 executing program 2: r0 = syz_mount_image$bfs(&(0x7f0000000000), &(0x7f00000000c0)='./file0\x00', 0x0, 0x3, &(0x7f0000000200)=[{&(0x7f0000000040)="cefaad1b01100000ff7f", 0xa}, {&(0x7f0000000140)="02", 0x1, 0x210}, {0x0, 0x0, 0xffffff}], 0x0, &(0x7f0000000100)) r1 = openat(0xffffffffffffff9c, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x9adf14bbbc0c6486, 0x12, r1, 0x0) preadv(r1, &(0x7f0000000280), 0x18, 0xd9f, 0x0) getgroups(0x0, 0x0) getgid() perf_event_open(0x0, 0xffffffffffffffff, 0x0, 0xffffffffffffffff, 0x0) mknodat(r0, &(0x7f0000000080)='./file0\x00', 0x0, 0x0) 19:43:30 executing program 1: r0 = syz_mount_image$bfs(&(0x7f0000000000), &(0x7f00000000c0)='./file0\x00', 0x0, 0x3, &(0x7f0000000200)=[{&(0x7f0000000040)="cefaad1b01100000ff7f", 0xa}, {&(0x7f0000000140)="02", 0x1, 0x210}, {0x0, 0x0, 0xffffff}], 0x0, &(0x7f0000000100)) r1 = openat(0xffffffffffffff9c, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x9adf14bbbc0c6486, 0x12, r1, 0x0) preadv(r1, &(0x7f0000000280), 0x18, 0xd9f, 0x0) getgroups(0x0, 0x0) getgid() perf_event_open(0x0, 0xffffffffffffffff, 0x0, 0xffffffffffffffff, 0x0) mknodat(r0, &(0x7f0000000080)='./file0\x00', 0x0, 0x0) [ 374.332197] BFS-fs: bfs_fill_super(): loop5 is unclean, continuing [ 374.343287] BFS-fs: bfs_fill_super(): loop3 is unclean, continuing 19:43:30 executing program 5: r0 = syz_mount_image$bfs(&(0x7f0000000000), &(0x7f00000000c0)='./file0\x00', 0x0, 0x3, &(0x7f0000000200)=[{&(0x7f0000000040)="cefaad1b01100000ff7f", 0xa}, {&(0x7f0000000140)="02", 0x1, 0x210}, {0x0, 0x0, 0xffffff}], 0x0, &(0x7f0000000100)) r1 = openat(0xffffffffffffff9c, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x9adf14bbbc0c6486, 0x12, r1, 0x0) preadv(r1, &(0x7f0000000280), 0x18, 0xd9f, 0x0) getgroups(0x0, 0x0) getgid() perf_event_open(0x0, 0xffffffffffffffff, 0x0, 0xffffffffffffffff, 0x0) mknodat(r0, &(0x7f0000000080)='./file0\x00', 0x0, 0x0) 19:43:30 executing program 3: r0 = syz_mount_image$bfs(&(0x7f0000000000), &(0x7f00000000c0)='./file0\x00', 0x0, 0x3, &(0x7f0000000200)=[{&(0x7f0000000040)="cefaad1b01100000ff7f", 0xa}, {&(0x7f0000000140)="02", 0x1, 0x210}, {0x0, 0x0, 0xffffff}], 0x0, &(0x7f0000000100)) r1 = openat(0xffffffffffffff9c, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x9adf14bbbc0c6486, 0x12, r1, 0x0) preadv(r1, &(0x7f0000000280), 0x18, 0xd9f, 0x0) getgroups(0x0, 0x0) getgid() perf_event_open(0x0, 0xffffffffffffffff, 0x0, 0xffffffffffffffff, 0x0) mknodat(r0, &(0x7f0000000080)='./file0\x00', 0x0, 0x0) [ 374.412979] BFS-fs: bfs_fill_super(): loop2 is unclean, continuing 19:43:30 executing program 1: r0 = syz_mount_image$bfs(&(0x7f0000000000), &(0x7f00000000c0)='./file0\x00', 0x0, 0x3, &(0x7f0000000200)=[{&(0x7f0000000040)="cefaad1b01100000ff7f", 0xa}, {&(0x7f0000000140)="02", 0x1, 0x210}, {0x0, 0x0, 0xffffff}], 0x0, &(0x7f0000000100)) r1 = openat(0xffffffffffffff9c, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x9adf14bbbc0c6486, 0x12, r1, 0x0) preadv(r1, &(0x7f0000000280), 0x18, 0xd9f, 0x0) getgroups(0x0, 0x0) getgid() perf_event_open(0x0, 0xffffffffffffffff, 0x0, 0xffffffffffffffff, 0x0) mknodat(r0, &(0x7f0000000080)='./file0\x00', 0x0, 0x0) [ 374.502203] BFS-fs: bfs_fill_super(): loop5 is unclean, continuing [ 374.618418] BFS-fs: bfs_fill_super(): loop3 is unclean, continuing 19:43:30 executing program 5: r0 = syz_mount_image$bfs(&(0x7f0000000000), &(0x7f00000000c0)='./file0\x00', 0x0, 0x3, &(0x7f0000000200)=[{&(0x7f0000000040)="cefaad1b01100000ff7f", 0xa}, {&(0x7f0000000140)="02", 0x1, 0x210}, {0x0, 0x0, 0xffffff}], 0x0, &(0x7f0000000100)) r1 = openat(0xffffffffffffff9c, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x9adf14bbbc0c6486, 0x12, r1, 0x0) preadv(r1, &(0x7f0000000280), 0x18, 0xd9f, 0x0) getgroups(0x0, 0x0) getgid() perf_event_open(0x0, 0xffffffffffffffff, 0x0, 0xffffffffffffffff, 0x0) mknodat(r0, &(0x7f0000000080)='./file0\x00', 0x0, 0x0) 19:43:30 executing program 2: r0 = syz_mount_image$bfs(&(0x7f0000000000), &(0x7f00000000c0)='./file0\x00', 0x0, 0x3, &(0x7f0000000200)=[{&(0x7f0000000040)="cefaad1b01100000ff7f", 0xa}, {&(0x7f0000000140)="02", 0x1, 0x210}, {0x0, 0x0, 0xffffff}], 0x0, &(0x7f0000000100)) r1 = openat(0xffffffffffffff9c, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x9adf14bbbc0c6486, 0x12, r1, 0x0) preadv(r1, &(0x7f0000000280), 0x18, 0xd9f, 0x0) getgroups(0x0, 0x0) getgid() perf_event_open(0x0, 0xffffffffffffffff, 0x0, 0xffffffffffffffff, 0x0) mknodat(r0, &(0x7f0000000080)='./file0\x00', 0x0, 0x0) 19:43:30 executing program 4: r0 = openat$cgroup_ro(0xffffffffffffff9c, &(0x7f0000000080)='cpu.stat\x00', 0x275a, 0x0) r1 = openat$cgroup_ro(0xffffffffffffff9c, &(0x7f00000001c0)='cpu.stat\x00', 0x275a, 0x0) write$binfmt_script(r1, &(0x7f0000000300)=ANY=[], 0x2343a726) mmap(&(0x7f0000000000/0xb36000)=nil, 0xb36000, 0x2, 0x28011, r1, 0x0) pselect6(0x0, 0x0, 0x0, 0x0, &(0x7f0000000240)={0x0, 0x3938700}, 0x0) ioctl$EXT4_IOC_SWAP_BOOT(r0, 0x6611) 19:43:30 executing program 3: r0 = syz_mount_image$bfs(&(0x7f0000000000), &(0x7f00000000c0)='./file0\x00', 0x0, 0x3, &(0x7f0000000200)=[{&(0x7f0000000040)="cefaad1b01100000ff7f", 0xa}, {&(0x7f0000000140)="02", 0x1, 0x210}, {0x0, 0x0, 0xffffff}], 0x0, &(0x7f0000000100)) r1 = openat(0xffffffffffffff9c, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x9adf14bbbc0c6486, 0x12, r1, 0x0) preadv(r1, &(0x7f0000000280), 0x18, 0xd9f, 0x0) getgroups(0x0, 0x0) getgid() perf_event_open(0x0, 0xffffffffffffffff, 0x0, 0xffffffffffffffff, 0x0) mknodat(r0, &(0x7f0000000080)='./file0\x00', 0x0, 0x0) 19:43:30 executing program 0: mkdirat(0xffffffffffffff9c, &(0x7f0000002040)='./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=00000000000000000040000,user_id=', @ANYRESDEC=0x0, @ANYBLOB=',group_id=', @ANYRESDEC=0x0]) read$FUSE(r0, &(0x7f00000021c0)={0x2020, 0x0, 0x0}, 0x2020) creat(&(0x7f0000000040)='./file0/file0\x00', 0x0) write$FUSE_INIT(r0, &(0x7f0000000080)={0x50, 0x0, r1, {0x7, 0x21, 0x0, 0x8690d1}}, 0x50) syz_fuse_handle_req(r0, &(0x7f0000004300)="1827dacb7cd53e01b4852de2d748e21fa033071acb841f449efc23d452101807ae5c485596338a6d31388444ae8ade7b60a85a37d3db29ef19ae4c4d4db9c2c82c7908debb2e2b5ebef336aad77bef942d064955079af4e914f372cec8ed0440f6ee0bded3c565283bdb75124011227712d5f01e8c1eb86cf69205a8b5b374edee58ebaf09d62191cf41190260c30a719bbc9bc29be0d60c678791de6b236c9b5a057247c281937c2b2ae747c858532113e0a1e7af49298ef54f15572301d3c907b02529bc470beab8f9208cf92b17a9df99ceff90a1e384d6bda3fe823d8eff0e2229a43c31781935de69466b1082c0f88d3716f234e1d6e17e1360f6621e686d661af20eaf08cc97c261590ac3291667a87bbf66f86d9005f034ea5517b2187b6dfecebc1cb8fc4dab511a2890a68ed185483c548168803f353520cc6f820d1349ac985e12a3ff6e8a78b29ed97213962fca3ba7d04d1ab4dbcfe93a88831f784ed278d079eb3e2e69d3161600fc7b0dae825b510a59c14315fc6ca0ce68dafd088f02a92ae0ab3f15ca1a863b640e8e4a89407a8b8d752892e1f8b0e793d430c3ec46cbe2b6a4bdad728c34e734864aeac2b6b2eb51c3a2f9e6773c5834166511086dc35847cfa17974889795ed305353d41c9399bb95936a3c1be1099f21795cfc04d9699929eca65a0edcae5d4e564404e5292dc15f40d78d94be9e8dca92983bc71729ab30a70455bbfd5a98d97cab9778d9b7b69fb20019e7e7c7bc17c84da1dab53a187a116ac229e00312c95b1074afff18a8771a4ab47be2205745836dc3cc1ce531fe697e9a734698fb2343b331ad9f13214d1d7d511dc646fb8b3b70fb4611e6d102a0e2bda6311ca824537f699efdefbd8a3a523e26272f07abd75504188edc788af9c75aabf77f4ac883573f63ded319fa5a8b6317d4490391879629446fa5ea4c695f3db9739f7bc1da7a19f3e1c0ccca98307b3a7a38272b7455c8957b17138c9e170c27895fcf47eb5530948b7cc43d61a621293b0c83dc893f02def2b42a8bd7ad6c9cdfeb7a3bde141e98e5af7500b07d85c6314949b754c88cc666bdaaec89271f56ec11bfa0aa337feb1140b8a07fbd5c79bdd0239f8aa1d454c0e5a16e99d38d1212ff709bb1964c317c98bfef37b56944666f0320ec85b5b1e07731de5584901f8c65e14fd2ba83b500fdbb137c7cdf91d66400688a5da6405ca7e0b8107ed65be0ef5c6234b62f613e7e76d6f3d5cc12bde4342391524e25bab6ec0a358c6c66b7cdbdd9301f91589af65cb7c02fe8271a798c5e122fef9e7581d28884d33d01f0475c9ac052d2d014bdc09e2738487742f7bff40facf2e96dcdfefa336c46923b77b334daf7b01a9fd5d957a29b83adf6f23acc507a58dabe6b2804532bc1a865a01b1126127f7c6a8029531db8a51d8472c0abffca5be97b9b5433ad220ab9ad65cf94a1167f3fb2b8804ce66f9f5cae212724b2b3a04343580f5919f446f40eaa0177f25ebe68ee7c7a35d9d5ef6e1cb220eaf8ad9b269b15c2ab9692c345f3c3bd5965f06adfdfa2d672b5e3184ebe192f73e70e829adfac2e6318d238dceb6e3d7d1422d57ff7124793b92966bd229c0725b0d591e59c57f98841b5ffad16d0ae903406014d3e632d0654e9084f870e124046f3ebae3ecbf5c5365aa32ebf169ccf1243dc8fb296cef006d5f00447ecd2980abb98e3b6e6bf6181e5df7994ea1c1273784af0d92a57394c71926dc143228a8ade103ff61860d21ffd467b2c41bbbd2490dd36add865828fb64396f16831a3a74f57ee2254cc93b25b7219bc00339a2518be3caa4765ed63295c84f1d59144e96aacfb57c6441f64f29729bb7d68127ae2472bbf089570003b1e820191878ab6f53db01c180751e34672cf5a96edfefe164580d6101672281b59f58f3c7b1222f2b6d19c8a8e5f9ad539045f7dbadaa767f993da974dae20744bf5ad0e0ec71ee97696659981e067463c78bd9337b8bcfc070e7e5b47303eaaf9651c19f19a15eab8e2c47041828be50994b5695ee5fbc9a9ecacf9de714215eb7992c07f262db8843937934fdf6fdd31d0f3a44f074f3a1dd6622dbdb3364df79d5ec90ead64c29e05a6c5358cc6b9d8493b7e1c53a91c37aa3653cf2002072461f4b99fcdec142e53b87f61ea55cdb834dd4e03f2f57a206cabe2f3f3cbfad3b4117bf4434718022b09a8419959a9bb97fba50a6b3b9a844cd1301de7bae89f8d1bf549b88dd2bd0697e70ce89cc2e383221ca2ae9d3671a730466c250a8963f6411a42ecc85a00c01b2b43c39432d5065a5fd11c29a23169891cd674cf3a31e82587a26c8d48aa3debeaf067a26669599fae850126dd516512e0cf5ab556b5582add7d2f665723a2244007ddc302f0ec29da73578a80c998849be2f766a334c7ade4dd46f37d648899da5cf7437af2d6e8d03d934903387c4c7e260909d59b546dfac9ffdce11fb92e5bb6ff6836fa0e6d0c5942b4660fdd68d3cc8a76ce0960584dbf634695ca75752b19067ba535e4779189b111c9a3e0ea877067c046d10021b0e60eae8d5dd7536b4474d8ab74679e2d8e68bc9208db5561e28d0bec177cda1e2f944a4cd97b6432033ce40063cbced6b36e486b096adffd699c9fdf58d5ec54bf4afdf52493fbfcd91e807da31ff675b567058697aa088118a6ecf1b7c7dceba3ba87d59d882fce3b3b676763ed658e991c4fd5746946815af0a2c1e96aeb27383cf6638d6d7e1932b3a028250fee18db7c46acd7fab33ab22ff91cf78029a4ed96494151652213fb7dcca0a8944568bf84aded113e20e6897d6b8f6f9fe5f6975c7cbf999d15ce5f8d50454d58e7a5b285fce4ef9d14758cf4a9619b17275fa66f2c6c48d44da95657708062bec9b633ba2df082766f549c5c1b661fc8a5f7b8b6699503da733a66df44f116c4a470b73648cb64bf04101e7bc1d048d230addbf22a5b98aea08beda847e33552faf771d9b181f610ce34530543096257856ea3a08276bec1ea40e7bf6957143623ef47b5c41e61d076eef0a5195431b49beab9fd7f07b1a153491a7250a889b26ce657df550b226fb94cb5f52306f47ee3af4627ef0cdc0c50536af7b386440b878ed5d672670abdb3ea3e3c3c031e67293104a4d6476cf325f6fe4762ce2351dffac116387baadb82f987cab7fe88ce1be7d44ccd572bfd29114d2ce4d5e90f4d6bf7be39ce25ab7de52815e4059d783564d518dd208714de1c524ff69a4ec5f29bb631eff605cc6f30a0bcfba44810a3a6fc263891791b51cb4be0d60d3d0798e38b01b9a21150589a436fb4df4584bf6e7094176884921bbb0f87b1bcdfb6df8aef8f58393800816c15647650448da0ba5bb76f7bf76c3be83aceab79eedae80e1fb46a2557a9485aa7a8053a5835e609fdf54222f5b43cba63c9508dbbd0e22953768f88e2070236d7255f682464d09c7ba12b2e8787a1bc889af686d2c355961d8f92f877bb09baef09d70b5b306047d8d3cb97fb06ba8d09bfbae02314dddf98092b6ef275743e9deb391995003d83b549ecd604daa9bd34ef311aeced5db504242241c0717f8302efedcd3fd43686a7ee21c73ba3c5af98c93d09158c9011e11bc4b51a3a4e904c4b6ced1a786adf310073405c27df6aae6d5da4398d78622ba9144ad09902da49b77046ad22fd303f07c1533f271eb82794b402382d2971f46c7907069907a7afb9e94dd4071685f91cfca10d86aad7c385e4d90f0d44d37588a8f1f267c1d8445634ca4194d1a0c5894a6d00cae3af3aec991cfefda59e3f46c0a6e2fac55b35259a9960ec7dbd1c7dd128368393f0de1e0994ba1f5b41762c22213f56bbf4c2cca458dd5731f9379f0651ba61fbf17a5861eb417e20a7fc9df12c6771f5ab322213ec95beff96dc1811dd0f45be8fb1ed93c2cc01e694620b550e45bd265fb357f52699cf9ca3ddf331fe4d11c5e97bb57631d9c7620b5c19562c85ef8e04ecd5cd5b713fbd94b6b76331a83f304cd8ae1a903ffa722cf5697b1e1bde206735656ce57254744daff8013f47f9aa4f062d8c5956fa8df5ee79d6e6ffbc0c47cd0c99517a6d92fe8ad18c001be4b55af7a6533712c6a2ccb7e813016e7cb74a94bf2a2ce9b3b440faae19210d43320cb81a6472d1da775ca27f2b5bbe5964271eefccdfa0bd6b163357af4539fdb5d5e2e7e1795040776d4d75b70928b8efa954556f4d225bd9b6f9e5a71a8e7a3ef5c36d459233c66650ada1c55dfa02bca3997f93b92028881d9c3ec0e7e1a42c587482b0cfbc77e8520c6ca0f3e5127c96b41056b7279d9e62358e39dc95e779affaaaddc8e9ee66ba336feca8b957ccb4f352c0d162390e3bde27b15132407c97c3a6b5f1704e1e559ee12655a71d7dce3711c8af907d7d2875e2407ff8c59c5457678058d3d00a7971d239c1b1c67dac3ff3fbcc2d8c8035e31040118ac46ba5110a16aedd0b7f731a4f86a63a697501a664946eaf7da6d3cc2a296f294ee765b8f26363ba6116e0ea0ef8eabb0f1e7cc429611194cf0bb66463d26a82dd118cbbd3f1040dca2f5f82ac5eb5df41a4658fcb34b68066c5708a4a16c48fd290b32e392e7f5b662f4e3fa2d79a814f52824cf737872604672bdaf80fc527deb1f690339c92b6c6c6c8635de5a2e1a7ff617d0f1c11bc3a3504d0de94d77678025ab5bea511d783df148e58b0793251db3b7b9e03bb201be89d5939c0a60ab548460d543d015082e00ad9d05418c327ebafbad7924aaf70e5fa6eb0be359b65ac2fbbcad495b17712e033cbf1853d1e2450ac4c8d19287074e76ca3d087d376b0f861b525d4949098dd4e3a3cc50118c8587adf6587ed9aa0352b7d812fe66bb64eb0c0f4d46822aa9c3d4848454d49b61cca24d7d6b82fafc5d8eb4e40e3665f24a95182b70b22c5f9303a49d1278f25de9855246c729fc8ba300fad799a949b9b0ce303477d22337d599d4c8441461d25725965183210a729fc59c4e5ddb45c0b9db06a09619e6009aa0653cd1e8b06d0e55c133d5022dcf91f12a21e9f977de2485f886c5133a8837987e7bc90662156b0250cc76cb03ad9fa36733ef371479ea9c1313682866b963f1f96bba8c658e2c6a10e5e29d8a07d4999b735bdef7f60326aa64fc198c3f2670fa4a44717fc613f1282fc324fd9476e6da7866cb6ce1efa8a1577088f2aa757584b8ade9f2ba34a2287870da2cc7704008b6e057eaf8bfe2fd0d6d60cf03e1751d2284c6439ee6079708451e64b1f7e7dc8400ae99e0d834a7daba6c3a8219812adff0760129e18a41eb0448c57a909714cd395933436e9ae040277f213e30ab7b6e7e3109642ffa051b3c423f6ffa7830c75d229acd617d6bc1f7948f09238f5437ff4fb302034fec1fed96c55c46c7d70d6ab3018c1a3d76120077f815fa67ec8815f44fd0cae7d1509d217a432ce904c778f201a508fdea4672e9cff797bd1d0f58d46f39396e148573ae9b2468e4ee5bd9a5abce8166333c524f0a104da2e3c99ddbc51fc6f4e7c628af79c93d0fbe61b1c4a72b11fe423597f126467a01ee6dad848f24abdfe453592f02c84e017fe553f27e639f88824d70aeeaca54758184f95f12d696291798046bb075fefd6876e8ef893f5b9340e21fc63c67feb6f03055f2f394a591164a61b1aab14c468998175b75974543e79b241dc69a6e346374dec5eebae154e36f29d17273e608ce69d539a5e4702f474bad66fbf3348f0c859bf884576faeeac754e290ec97e863526e55420da72b6b6cd209e6685ffb64e9865d00eb017c843d3c0cf3ab26f53f76316fbe009f0b2c4932b0694fecf1a148dbead458ca9f5f6d678d6c6fbd23fb6aea9e951914300eaaaf69bf35d4ce11c0349a02aa14529a083e701eac0177d4ddb305a9f9a5cf8bacd96327a161bb8b877813ea022d62bac8f0ab9eb5e9d145dda4b1fe79c0bee34c8bbfe866ba376d3a71b9809adda06e64eafaa6cf53fff8ed63e15525fd409e13b1809ae6e6e937acf858a59d2073b304171d5ab35ec92f66fbb2d4e34d46e886c3546c1026d0ff27821a15aa397dbc686540d546ea66fb43dcb9beaeadde6250cfe8e563f9033b432018c88bec07279c6a0228f3eb11031d3435d95c9c1789a5338f74aa6db2c853c87f8f2397f9067fa59774770f64b8ae42b9a07f85f1bcabbc6d3b3456a253bdb73ad3de0aa416589b722053c81db90e7b66a835d636615701e6869fef016bfaba9da0a869005ffc3174b605fdabdb8c7346262ce78a64aa7036960913edfffad202d664d1771018de43b6548a6672f48979b8e30017a93da2c093266306e09eb203fb37d7d54466fb26d4414ba88346d02d8811f100dcb0a3e50ae46247b986b928f12c1ad506c6b33b49d7e6955ae9619f73c79b72a95b053d53c4c54d36dceb8ae780b321aa41b5d61caa21a6c65329f08da522bbbb3d07501b39cc6bfbe4a2ef8054d7c57666bc805ed451517a1432b958141f3ce94752a67a17aadb41590037da8efdb251eb56de30b0e0e75adfbf4e06d4777f843a8d7c31e2ab62d98764217491d46960d67d3ee1213d150c28e75d1f440d41ffc3cf876554e2d4a354f70fce17e4c0fdc64992c32e785263ca4ffcab57d3d46d220627ed05f1628551e9843137996bc7a0b773e1ccfe5364216a8003757ffdc052d93793a3463baf4eef5dd283826f8510bb1f20505a6e61cb3d571d0f77e67ff3c0aa5ca91f6d68c7e0d2d79c649b091b30b2911c5c47157c9c531296eba681e039eaecab83722cc2fd5b91913a463ba9f693e34da60b1adb8ee9f4a83fa67e25f19e4cd6e19ed1381cba8b5b4591109637ae1f7f29b5495fc5f8057da565d937e7577735bd98fe626ce8568897d240f054ad69c8e0ca424d1be51b17d5e639253fb2fe6791e01edcf9c4f8404233d7f98b52c31c4996b6b63112d0126036ca20cf52a2da2478683c41bfd8fb5b34de59d5e87b5075e5e1d78ad06c6a2f6e662145be3d30d140b62c49df203350ea4412c97aaeec7aaa00d81b89f3b7295607840de2a8386f52012b5c4e6e0e1986565bc4f99b6bc10f3a2ab59783a8b9f3c696f741af0f51b6592c68ddff861fc7d2b16876b05a54eae9ec0e170fbf26d9358941c6cba50a5c41e77f72c7f41e0bbf6023f04f7701f676a64cb63ea1a8d373ee6a99ba56449699ccdf8a11dc7d840d695cd5ef987f74e5b16594cc8c6c2251c47b429281b6e34c0288c7242052ac3c9c63213f6ddb08726001e0afe1fb312d463db8722f1617972dc7f365de498027ef0b5c6d100e583348cd777a2afbfd60ef59969c8f88358b6995c177a7d7e69d86b11e36f42bae8c9af599d3f828447c31004000163bb74ef20f656f6a1c8159bd0f867f2e283c10656a40a397b2e514c19efb5d5a5f54316509801bd8208a2c84b2ef13e54d7b8af8787b826b50095a15e33a5e8e306454312a83af7869b7ba0039ca601751b580a9190435d35a8ce9d8e9558ca1bcea3cc3604f4e991aee79fd0d2393b9f87e8dac7782e837e1de5e88a7c79385a2b14556041f49c1113df43efd8aea14c4b651d713fc9989b2fd77ce13a98efef5e83cc6843d313117753d82870c5efec8cc6fd855ab6e0fc6d48c66874fdcb2d007db7fbb9371da3836eb23da1106283a20e32617bcaba574b7b6298d48334eaeef905ff348c2bfbc1c83a88d6915b644d1854161ab4f1d1db12e74de2853e48d1a10f9835c226bca6944d0de6a18e0e07df45ad72a7d354045a6997ffdee010e37091a3a5280e5db8aeea0245217a6f1160a6287d9a28c0eeabaebe755b9485da5b7ccb85166ed902e63200e5e8ac464124bef0196eddee6cfe90fce770b416817e1ca78494786bdaeafa3538841f74bbdb2585d63f667ef227287efa56c030c0999e9ead590f1ce383a138233235494ecec0aed97c803b4d7c4fb80ac9a3bcb1dd2bab51382a94195bee034c3f3d3d9efc44add83ec580a5cfe8f5942b1694b0ab3ef4b2d9f7c0b8634b056c6b6eeb946be1825fa452abdbc1545cd94774abed3fdc2b0399929298221030f6cd0a2b38490f5e4bfd53ee20de10eeb2ffacca980d40e0885cb91c94a4d81a61d863efd0f7a12da233e1dacf7af728950892ef887abcc5e4d08c6b57834a1e5dd1dfc69418fc681b47d8cd34c6a3846b0e1afdc7c7f9033ff817a72ac617c0a1e59e4e6ea40bd668c499f221c5f63700e74b68ba3045b4460f0fa60308cf8964d95237d888d5c1b1be0fa7bd2703eaeb0d2914b8d22cbd8693c16f21bb72566f38aa97e86f212557d40e10b285e1d4de0b153c8f91e168e9d0031bb7ee7fec5f0c3fbf15bc6fbceeae6dd363b7e9835b175b0be16a3348a2c2d07468449fbb2fcfca9e7d8b72b623355715a6a1edc87ea4c699ffeacb2277fbb5658a1eb12d0a7a93bf100ab11cf49b35c16a14044ac8e5bd69af05b252325f0eca41f90681b4a1ec399096939a96685926655a0c4d172d06646c87f35b65c0d7654882b79838f78c35febbdb378f9f28d7e6ba1c1fa191bbcdbf991731f546439a966e4f7a15c77367161bde14b731c9f2b91114fa46e02e70f07d3c40988e8140866ed3dcd98ef5524700deb75c1a6414016da0ce6845e936a8692b7beac01bc855a72a490c667c3b755ffaaa57af54af1bd07ae7b203be85f3653aa63cc5ae10f6e585c7bd8a5257604e82fad6c7be6f1a47eb665c1422c03d3263f351671a48bd5eed22077b8c16e706f009880941c29b90c29a11ef008a371b29200f32523b9847d911fab4ee1468bf98a49ff73703e2d9d7bbf6ae37459c3cb502541f304e1d5918518a06225b65f3b38b91f8e0b49a29ef9aacca369ce5cf8b45738e29118ab06078b885189acf4d0a5200b86cb2269dde90dfada27975dbe6ded12232c0faf7ea12ecacbdf416cff8632e48346478a75c0279c1920b7556fc6670704d5d97912c75d3a9cffe6891abdf747a6850ba7d9668e56c7e7ecc03c5c388e886bc984c8bfd9f470b7e4ea4d146c3c28e4f8ff82b9558266343036e6239a26f567f7633911ccc51522c29ff3ca36ad5b8cfd6ec1c86ae08f30d87a503c909e66dc278e9d14f3fae4bfa4813f315b1610ed76fc149d92f319044e813c3769d4978637e0ee732d3bb86e9fa584181f41d4304c07a1cb71d10f07da649288275a213eff161c536c7366d4c010cf9a4b1c2f2940607dc7468e51204c6983c554d616d48f93ae51e6a7769b3285785ae7bcba3cfb27879df1d7f1f18849a70814eb51df6d1d8cbe80b736cb38326f7db7a06e49cd4fe41b3f7a9156cfac9222ac23d13765e7f2910a365fb23a208f192cfca97b2b8a3de44a2d90d3c865bec109f4bdfb1d37216cf5f71a27c39a83b5562b0c06d76b46b2d8f5b15cb1765d6c78d065d24bedf72405dcb8e795fe183196a6b620f918a2dd7fdfac142aa653fd431ec153e3daac8f615a45b3a0d665d5fe36efb6e2f18b8399429e4f363748eddd5cd2a637e9a0a553fac6d05a3e2bd1b26f2f99433f8f59a3691417a4f35ff7d46a22e39e94641d942706850cb2843ff4a34122e37dcc8224ae9f6ab7f64ff4a0bcb0aaff2f429e4f0f5fcf90ab6a2c45e8f2408d9bbd4f60d6b01a0cf527895e1cd063b178b8973930b9488d81d3f0f7985b900d0a894c29642b809ef39294bfaaa5401f5ed50cbb91a047b60ad54b323a2f2ada04d19d6dbda02e0f22d4d6520f9db2263181c97c9bb74dd8a90adedc80bfd064eb103f67d02ea17571f870c779470bb6460c658da4c502b9a10c8050fc26ad5cc1ae1eb02f0d703d05b48f48ab8c9f9a1bd000181ccf929d45544b44e9a3cd0bcd412ad639323283ed229e5486a2a93babb165880a0a7329834bb51a0631cba5caa30637ca3f07074051c608b7c7170c8c415c2eb88bd6a798bd86953ff71052506ccf0e2357deff6cef24de5b7f68a17082c08d096e43fbe727ab0ab1aa27a703ccd58168039e50dce2d400ed7f2a217c1eea7b29455fbf910d36db324d1c6b53343a78484883ad100a0b5b28c74ab6296df5bf8048fb916e8ddda0ded3f5b08d262b9b1cb1ecb149c02a21490ebebe8856c844d448d2a3878dcc930c3c88d9addf73917e9d3f878fb12fba3e602cfde199a0e69eab56e3d4ffa01135b3145baa613be01f0b94af5bd3b8b432339c954f52b8551fd13790bc1ee18be226b819d8001a3da8e097f84c166e4002e4c1043d3a3721f05105cd17a278b9509d7a04826e8a5b4956bbf976ffb4857fd88da99cfea8d2e0a1c4f52f71f87cbee8c02fbf59b12bdaccb67d0b95f0a56693eafafeefce1953d708b56532ed5bbe12626a3d041c031b48a47b34c504f7dd57e21147b920c058385ddc8cbea5332086c269b0d5c2439f30fa431f88d1a10e25eba0df70d8617ecd5546314ffeae9c4baab872ab82a45eeaf0e1e1533e8a6189c324f31b652aeadc52981b66161313999c5a7bd7c79ef4ee55c7cb00ebd9637ffe01924508a44ab72ab16b70b8b815ce7d27772db315122f4a5a7679af5ac685c26320a71cdd8066b19f749705e2e35d1d9166ecb066053dd05a759270e119944cf99b918cb5e4e6c931031ae2eeffe349ac246c92174091c687c58879e1f05c43b010f7ec3f204c106cf60740b0bc2d355f57bbaec7d060dedab9aebaa4094e72ebffbf61cdfb7d69fbd146daea59339fa83c19c5f75b866af5e7f387740e675e1e2ba29c261d9e7237c6e9ef1b39a8fdacb44de0eaff5f4f9e3e42b75d0a37834eab0cf47acf65e882f0962e01982e783c0dae7efbc95dccb235562e5a2e04fd2b4b43388c0292e6e8198c6df0348920d6e1c8acdd2e892d3f7aef7703824dbb08695642f0e444ade6c4f1ec1e267feb5135cccd50fcde643acb66dbd18f507496957ced435e0db0a8e8441a8e2ebc365f995c32399f7d180b6faeb85ee1921b95f82f3194bed7d157e842257d2da26dfac90f32fb53147e48e232d5115f1cd12b45c55330b29775ab776599afa504b7fe114cd7fb3ab4eb6c30becb82f448b284b20010bea918019af99b2a9ccab1585aec19fd1abe8365a6023f96dddf1a37cce2734bb6585143729850bcd811787bd07cb5fdd57cc987f9278b7f5ef3c7529a9b6d20d18cc4446f1036cf7635da6732986c38df4785e2e428f14b84957319772bdbb7d2d2d20321e522b1ec6c807f3a3f575643d4b71e1bbd1e843b5816aa68900298f5058c65a9fe1022978a44a77bde2b99e221de97cd7fa6a2ea440220bac20e3e4c1e4224958aca15681d3a18f74218114c3e5eefa1fc16de8c07f1d1297b0e772d05f205337175c1dbe88dfc876dcfce367304afac68c41b98ed2ba3f04fd1b37db27dd5d9c9aafaeadfcc44585908ea655ffce1fc2516b060256777e8953e2a6861ec4460034691aed001ea2971627615fc7972773d6a8c343117bae3fc68cfd1f187c478c0f52e86b118c65c39848a8c582ed908fb1242ad3455288cc858e52e119d368e00783c2b8c2916ba564a3501326baefe1dcadac8b4b8b666f20a3a245ca171b43af", 0x2000, &(0x7f0000006d00)={0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, &(0x7f0000006780)={0x90}, 0x0, 0x0, 0x0, 0x0}) syz_fuse_handle_req(r0, &(0x7f0000008d80)="9653e1f8dee4c92e93feecece464dfca3aaf6d1c3ea7734b3779ef227f374c39d5b3c1e148b57cb85ff5c1925f1145af6e9835ce55560c4f8d1c728f26c8f4bb69844be49a33e9fb682b820dbca0305774716091d2a8cac8865e28b976241e25967857533490ddd54e004cb56e0c2781b83680a86025fb55e6ca7edc0290dd2b3a24c765fd70403c8fc6fbb40bdc122911cbaeb374795f05a416932c6399e1ed25e135cd5c10123fb6d2f2ff67362a4b61ff80b3e4f12094d63a9ac8de22f5b3d6cf0ca5a3d54e35205e0d72fdfeffff72136209b09dffd30ee3f8084cb98eba60da5f6096397ac194c5f5a161aaf94d9d3a7f924355e1b341d4e2b3a30977906408489387a1f80dcf3b060a5e0c399c42b81516c212db69656638a5d0587c83f6eee4caae4421d54c25b01251fc33967810ec579bb23b9c21ade2479eee6bea6625af17d0a32076200b8634d52dd6e390414e228bb27ca0d7e08e42b68edc2c8692545703d43fdafb88785216ef0e15359419085da1a2487b996ff17eae18ea603900ecbc2dd76303671c92437b409c718b9e51adfce6e4d9b26e285bdc6c0ada71b3e83494758145b2d672d737345059280a8e0e1b72ebcd3a27034e6b72f3ee5dde9b9f3e0e68790654acdedcaa3efb3364d7c742d565a665c4782e6fa38ac09f82a8aab4af987238a1116dd4a4f13740d2b7ef4fa7f295cd901627256176e51842690f776c910c98877343672e9d2032596cc54a841261dfc2b78a1194741e8c28968c7563ba95dd43054edafe341a12153ba7d062c1ed547fcc6efadc2ceb1209da301dd897ca41236ade90f8db68e32ad66140e01bb46b2be3d009446c37713a2d0655e00f9ec4cd72a6955917dcf4af92ff761f7654eaabf88a6228e4c9f77661bdda59023d3d2cce02c35e878296075642c97d647f76f7435b3837a921bd6f388497f74f105bc02ac98c33e17b3b028591ff5cfce06d6b4d97f55ccac9b07c3f1eebf0c1eb1af0951075ed2a296e063fc09a94f533f7e3573cbc08e462c3996147077f652ba219d0544099b5556e52f72109b954af066504ab4fc2cad36c0e2fc7028f5ec488ccf84d5270c37665cc275b2f0c42cca7606596391a056c2dd7fc41147fa4716e52bfb5891007878196d9348b48719e8de58fbedc955f0f7973ac752292f787e2f6e077684779666aa44d2f11d1196cacf4c77456205ce4b176b2775a4eaf56ba7589f00aa586244d88fc40e2be4676d76a9dca23195006c0be5ed7214b6b9b04fdfdf4bdf9a0f4b54e1114f8767aaf2085cabd6eaec4ac32aed8f9633f9e7006aacd70311cc7eb70dffbeb0137cf2f9f9e76b9a5b9ba74d0930559d0d9588558c0823ca60a925ee2b9d9e0c1346c5a5a0c6e44285f4d642a5ac26c97fe975c4f8a26d37c597a700114465d2eec58179aca75acc14b73260957878b978aff0786793c3bdf9f1bf2defa1c4a3aed5c99eb8b1b64bf455f2054016b666a97854920533f4241771638d1049f3f1779260935e6802f5913d0a60a29408ee424bbaa3f9f536463cecc9fe23163fb1d1428c418f91d05d8de2c92a9d3b4c59ba3deb2f320372fa2f3418f3d1d3cfcfc6caf8e1872009a857ec4134de41572a39c5324b9dcb878c95833631bfb662e39e339bf1ad06cf7d1eae4b2fe8f7e2fec9041bbd38a635bb54a17a7d6080f19da7ef3099be97bd6b59d5339259de650cc11d694fc12450b13bc95ae2362927b79472e4330504ae4658bd489d54476b33ac371a986290f32a2afe2e46b809d8beafc7e0d5493e55f0a267a37e03999dd557dfdb4d7c59401e0a2c7ae298ee986e8936a6c73d3113298aa69cb6f1d19073bfbd87789819c9151ea6ecd2793c106fa5fca7d2c788ffb4b26dadad1334ca7be7da5c823063bc1c90e693ff9014b4a4738d3c20f444aa2262da239ad12f9658b7bd9b09110476f769c55925ed02ee3d1de6f851359b7714aa7606e663a5f507ca1de1de0d82889ab8c0645aa2718a0bb143be109499b950d2968add6c77189c1316a1cb5fb48d43e4a514e574cbe900006fcedb09afeba7b112ec81e8980696789d4ae7f25d9857c3bc2a0c122ddc80e1288adfe9add682463c2556d813ab3c7e4e332412d4508dd058089d8e6586f2ab472912e51e67de1675c1492447a00cb886c84b82204167bd112ea17db259a1525ad9d524d7e3abb9b1797412ee8ba604018c32df510b83c2a084c8548fdda3ba7563383f8c6c4f19f4e9828e900580492bc1a07534b0c54c597dbee18917b9317943f9399b3fc0d3c357297808de2d4473f5a3c4b802a4241208034ca5c3452e714c53cac7406b4d5bca993c937987a572790d8529bf9e961e03173067976c9a3aa14046108829d7c32106feab5fcc576be7b815daefe64dac84bde39c38e9ee9f58215d30021b26bddfa210b115a34deb8ef0ee7c9a1aebca06be55a857cd61618ec217fbf5f04414f0f85d694806562364289b612a6c058c6de51d3b0739600a4fe03ad2516f2c2b87f18571545ff6b70461c92ac9bc8f80e321da15d547ebf91086d33f8bab4cf0b3888fd2bf1abecb9a9af985992f6504a3afad4aa61018e84491377d9754311b4dd90fbfc379ead51dd5c922b6874d483ba19c575ea5583a010aeedb35633cffd771588f6e6f891cc6c05289b939fd4eb5e01810675763fb3b22d4d7d18d4ac0d909d4dd198302b5f9e47d83ec5f123a3e43d55d031f745d45408684ee61fc33bb165bfad38f36e6cce1a3f22d19107bc2b12ba35fc359939cdbfcc00d42c0613765dd89f4e09779986925c4377bd07fe3bcb4fefe339a364cc48c55914490e2a07a644aa021db434f9c549096beb0a87f9369d774f95a044408b244c20cf29059da6c25d71a5011c5af94b816461431010cbd7e8164bfc5820e01b4d28adf6c12dbb9d0bc4de536d112d47b875f5766fcc5a66c63a043399b7438c007ef5b9a5b7bc34887146e5c1c5775980b77bc49a8cc4e96b26ec113f802f42100ccfd0e815fe94c64072c2075832b3042e2845b914523b220b0ca52e1eb98362562fb66c2d8de93b67b58e02e1a83e06ba43ddf892d89b280d3f865ee2970d9d306440bccbcd3daed4c4b35fdca85474a3acb69f2ac9f63a414f88ae0067cd3c300ec67a53ac9f9c094375f375193ff643164c874740b90df1361e3cd6330763f84c7ab1920502e86a3b61333c1fe3be427529409e0d1fbb74a6c8c8385acdcba7e71e1bf6e4eb9a3dc6531cc59e3a23b0fb9874e4d76a51fb5a9a84322dfa6c34d03e3e321cdd321cf504eb6708aabcfbe44e62a6874119e1dbf6408f91eda6bcb64486f5a3efe72b9d3a75236e5633c1d6bc98f78b6ca81f72eae3c4729c7073793343b2e3da2e6b915d575b13dcded805de0305b75ce9450004ca758b2b6db9fd337d41127e2ccef7c54fddb7131659a679f16602384b3df53ad8165981b34acbf7bb898ed5d3c6bb9164bb75c2751204e8fad5914328035864c40eca5baba872a92eb5b2bfdd33d21bf4b3280361dc04fa257cd4b3141248f72821c39658cbef23dd249512513d1d95bd83ae72cc551bf05eeee7d534dfaf10b53ca46ecade06b0dba55ebb58afe31297e3787d9f5cafa3492db119e8cfd60020db919e0e4fb70f0fd1bc76b95b72f421178f70712a3bce7a09820bc16bbf59d0332d62be06090f5508eb324436960fef05d89b5892c73d3dbd921b3f7ccce17b0148ba7703eadb593fbae8de4d208f45dc10f400d1b68a430f89ccf17a67ea7e377660048bcfc60cbfa3c220c7986d16f8bd43a1632f6d00d8a8d9b83002917d936ab7910b124c31ae9b8aaa9122b6ff4f6fd9392e0e65847f73fafbc0d8fa1193fe86cf45e3edfdf96a58839bc55fbcf7c1ce8ad3ee2cbe80f0d5cbe9d8013aae378a5990937127b366101acaa14bd8d05fca519ba8e8b6b5bfbe2091c47c7854914ca23195d7bb2c2c95aaf8930fec5e9119117695a6daa59c98fca7389112feb0b4adae232af7f6cc4e222c44ca763a1b88e2249c3e57508bc968ef7aafca551ef269bea4ed607f0b6a75fcccf396f017eca4332f4aae6328a6a6eaff5e484ad3a44340b0e23422a82d5806cfe9a7193b6b6b739b5fbf30a90be438e8a5c172d77d28d010f5bc5fedbbe8e67e535187e2335be9da316d9401bca4fcbed9fca7e6630057a7b662a4c88f05556b78b4ebe99d7967c7ab43bc1b43a91c7c057b72ebdf4cb36251186859a1658d1d2f552470dc5ed424e6f3b555539d839f90d447222e8787076b6dd0ff1da3c3af28def1c24de3ff0a85d829ebb14d10047961315213141d936372458b9385db222837ed17075ea61a90ad4d6f5498025c571db7ba3cc2831fc35b8c647acccec32c453b011291b2a849a6cca9e1616b246cec3ad07453d2487962ec63dd078585373378c7eb4784ae02db47553f4a240c82303b5ee2caaae40af00c1e805689fc9641c0c77301f3e3fa0fe53b91fc2f06f0c439b84abb2282ab307ca76266572c09bc51e348a7639f8afe3f6bae27a8404f867ee9a13965f9303958c645f33a0caedfd5433ff6c795e573f5bf070bd137e77afda661a0644320eafda5f991caacc1e28c66ecb1033da661a2344a1ccd779b67cc8475682d9b30a69678761b36f1b688918bc391b7f5074415aab74da6542cbb49a95359f64c3b3373b4954370c604c9d10b8b42228317e3e53f87535dd634bc3574e64c4193188917a5f3f05d62184fde854410b0afde444c613063a5cffedb7cc55ba22423d0fc0cdcc4ac03b6fd3c4c04220ffcbbff2f22aa836ecb02fe8cc4c4691ddd5c6a2e08dd0037dd33f9e0c1556f585f51beb08da41b288e1b0f95f2747421241ddaf0dc345dbe41fa7d2ae0c19b6f5760d9fbbb460f52e006f75fda434c074c51ff0a0aa9e0aaf39bd7409e6a8dd569afa79362ff6d2ff29954f8b37a867fa6aaca071c22180ddbbadf01b66811d43cc3025193098931796f6e34ba098ebdc1f8fa064e5e1c319b20c92349ffe05e425f08c4a7521c72d910ee5d6ef58b1b396d57ac0ca5af0db91f0917a4e622bb20a28ff74eb75eb2bf754277b4b0583ea4749b803d87a514708c2b592d12d2bb712886cddf6a437790ee3660710d0ccb171b1dae436905f313cdaef09dcaa95aada9fbfae8be2ad4b07c182f8e5f183fa35f2d44bab5305f91f439eca3cb2310376d09b89d5d7502943550b09afe17f37823ac4b140771e9ebbb604a97040527c96dc4a69abe95c9e2ade6b7fb54146db7d1c3c65e994e95d7183a6f26c58bd1b64e2d47604af405b776cc139e813538b974a0b3b2e256f72c89da14c0267b7963a0baaf42ad1f4814cb7f18b900243456e8f37ff8f66fe05e832bbf1803b1f25c4cf73971fc85c472eaa7470ceb3845577299618bed46577e88efc4a1aeeb53b11fe14d6c14b08045a09906be068787fe418c8d9d4748285f8158cedea1625b7c4ad53db588a3728c0cf4f8dda27b0056a1ce1d4555867a694676c8eb359ec4c11f603358fbb7ac483f88f899f123a0a6e8dd6fae7e019a9bb545e93a1aa23bc2bb43128341098d35c5b16f60891864a44ff7215e914dd365ad842f35de0ec7a35667f8ad456b16b9ea97dd10f2a72a4a9a6ad0835e6a9880e0ea32bb1e641028b601e571e2071a97d6a4ff348fe3692d207d35246082d239b0568d680eda958977242d58ce0ae4123c1ecd883447a0973d9196e4a06b604291f660d954707c9430e3afc5084850e756e20603640afd435c5702e352a77960492b45b299c0a1f5ff06fb60f81d39f0d280a23e272d92fd7b27fd6f84228b3b24a1506fd0dbc44a019220962679c298cdb512d86d5e24547750239bd1b93e92552f3ef7be00be5f5f66766f62c85f8a57a4e5be7751d83218cc6dd8080970cb51562ddebcac434236e02b260c31c110dd2dfa9a925946af5e3b80992856791a611edf823345898c2b1cd68ca108ddc19b0df63c42aa26e3c105ab62b2397ee368da34a7ba4d54d44694528fad331b15980f7992d45d077055fbbb9ba142990ed0c247ca57a01ad637d81b929a6316088a61f18c800152b836c33935c9b7f6a07287b5d18e5b110d5be42b55796a4e0e2949f1b5eec2284d58f74248149d206921c608cc8e36c04c70a3b74cd7575fef2d5cc9c6e7d2791595b2b9ddb6ef49c2cbe740c8baa19032b82b6aab8fcd3657bb3c5b51940432ac3e808b170507d846c38dcd158a5fbb704bb0c22021962c29399d3c2930035831f8c0f164b5b947e87a1c4593aacb02f71365388189884e10655815336643aa85cfc37d736f35904368ac0b9cfceed691859bf0083d9be2860e59fc81fd339b2b5b48622c121c71243864f92cdb076b4643f45ea6195f81bd6b607426ca5af43cb1b542d09047ced15b814a94340f20c2b3687efda42e775fc04022d1e3bc4469ce5837ace06ec8c48cb997d09a47a5a9202f707ea0e071e1374f98a879b9a6ab782c678abf12ea2ef95c050f1affeadf4f3e6825502e34f60d20fa98aff763e1c9a6c818cea9911045bbc5d7a07d5cf13ac30b87e89b0186e1986f75105a39cec44e0f0a17ef10c84d1c16b0c110996290ed46936056ee2e28ca90322088a317c84d9314c89af776547f50d5e9d2f95837f421e981efaa1a681c5b6dc13cc97d1e10d5bca314c473b2b5c8e50e2a8eab18ef59a4ed32cd5ef87b8578fa20424de1a937c2c17c2d38b64c51bb82bc93fa91d2b7c4f572a7c9c81d23717db3398412b1cd66af892ad314993f31d20d9c2a1cdddc4f015257acfe561bdded7bbf7ffe3302a7531e49d97e9fc255166d496f86a5e4d8b4be3064d183f6da7bc12b66afcb9123b71fc3dabb6bf752f5cd8dec40cabb15beda27823e72efd96d216f40da0ad90a67e93c05b955eb5239c9ce9bbae439637be5b11b71374745d9f33592b473f8d43fdf3b740d976afed1226894b3f0a3887465fe39113fd10472e95ef159d3365a3080bf10f431961f68e0d414bb7f9a6a6c288924d21e4638a862e78f0bf1d1d8d9cbb17501a9e5150f516f81a888bc6489da6c80b00d065ce941d7cc2ca3075fabc57891ebc6910fd8b5918efda4ca5859eea667d5f27581bedbed8cbb83366d7e3d5a21e50db1cd3d80ab4cea4a3256effe9a902b29cda6757d926cee9a514b859295c0590af218cbc30c441bef3c3f4236a557337a21c089b298a4b7e9d2f6f526e268c8cbb0d1e1e7076f5b0e71aa8238dc2f3b3092c1acea0a3fa2839b4c5c8dab8303880623e98ee423a858087e39df49fd45db27cf0f7d339df3f1911ad143a93ed50907e28d7e9d55c124f199b5b1c072c4a53fe3b778cee0c01a7a639a5f94f796164feb035cc8ad2fc2f887886577cd31efca4617ccc29eba84976814fd38cee098f6e7b5045422521679ba73db51920e711ff670482033d0b793d35499a2b99cc6bdc86c83a367ba723767b69af4a15b7bf9b1987ccd59dc91b892f25164fae725c85e53b8332480dc6cb85d2858c23d417b720a06feca5dc007d66bb4724d45f30fdcd00329ab5c483e3e7e52f08e3bde82ed390e11eeed52b1febc706e5ba38535a37c1cad2a776faec7689cefab86eb3d2e851a6c1a2028742134ac0cf1c97a6164cf4914271d7ed29d9eb339a9d91f65f49fa90de357aa005c9d82b9c79d08303e3c58ecba42d8ca46d801a87bc2cbe382a3b8e54d205247a9b8788b7cdebbf734b145640faa7b30383dc2e1d26985f0bc0d739ca3b809cd6070c56a30231d420310e6677c83f4e7134ec519aa0627decfdbea9608954bebb899af4f5e297970f118d8dcd3247440083852d3b4f86eca30b2ca74fd3af1cd68e876abe8d3f29a62926c9089d976fc25bb7b7637192e5d71c13b473e1652b546830e9e5a6c22578ac47988a652192591b0d835225a4c50f91da7d0554e63a7ea04f6e4db55cdee5ba3cb9c0e92b7ab0bec62d8434e1806f47e69a968adaddd2c05c3bdd5b938b97aae30675664527f6420ce3c371b9621d7e162b503c16eca572f347493b3cb3830b8abed28d293ea429342d9ec42bec9b9f0d5fca4a314cfbf6cbb6a7147729dc46aab27405b92fdc9e194a8c7ac707ca41fbb85069246c78cc6e845e55a70a9da4bf29645fbc087063fbac3b00c4bed518143835b6d140eb957f704eeb30d096b4e7940582d86e4a06a5a221404695c2869e7b89cee9ed7da67cc4969cb485ace8c7a78a4c0337855cd5f44ddd89d38b12f540b4b0d71df1022f34a56cf0f161275165d9a558f0c2921d5a1adcc8b19c7d2e4ad595ee6ec7a2b5391d1e81815bc7cc00f8bc885ca5e85f89840564f7e86d7702479a04b4a9e5c505dbf6917775aadb28e29451a663a555e86fb1634aac381acfac5176c28eb19921c822b2a72f1da0a0d114b00ad48aa1fc2af7136b8713fc99adb7b8491a6b2019e7d71786245d69eff731351dc385b5b66f05d84a022dfd6c54769d0b43176ee8671420ed54cee33e2a28565e36640ff921e04c065488359d6eef0fb1d2488f88160b83c8929a96efec534375ae7baff73c6ba9690ac2333c661aa752f9c19f6d600d0fc9e0e6dcdf663181ed7159d489fb3efbb046841291d30ad8d93e91b379067fa1aa1489797d08e40f5852ed63c9e507daddef1fd0c1ef2e54047a6d87134cb263c7c319faeb7d1cd9eef25ccff088a40b348c787f1be497c95eeb2d431e16b32f1b110f368f9fef09c700519d28776eec6883996f4f0a47cfa60e948f4b8f21d6dbe6f3d0a534dde3cfdd9c34eb576cf7b238f99ab5f5b75f2ebb13f8ffa187c60925b3cdbd82c93268f7e098a45ec96786ce0af8006ad21f07ee2fb19311f2816ff4e53472c2a9ae934d400b325a10763e5b6aea437a4114fbd129ab49346ea3df01df47181a882da3eb06762e5c31f81f67affa612a1da03f6c7a22570ba38585bfa574a7321f4a83f1131c2bd83714da0bdc9f2d488a9e0aa9dfee22ef9249896505ad86e19f13593d3a3dee89cb2e76b238c1bf23da34eaedc26da2b515e87182d6a3e644c79c9e0b100fb8538348364e519574ba570a57956f21668d3d29a81d542ff957f7df5ebbb12180eb9096ba3e165feb30770d0ad93f96428578504d9fe4ff38e4633892382bfeaa1847e36349054eb63b233cbb7292d55209e8fe438a04fa83628e13f5071a9d7cf5167fbe769cc61557878dec4ecce664aae040dd21a933da94bc7872ad34081144853d3da80fb4d0c4496c3d54e671c3651cc7a55c0c1bbb682a4be9767315c64047da3ae30e78e4dfd2d1381f1b205df563b81c7cd18fe1a25f3b73b52230815ce3fd87b3bd01d91ddf2a8d9b6ffb733ff9246998ff1ab9559ed8c46ea9d900133b98ae119a930c65e150e5a1ccb243ea0d93c1114918ae02675fd3569dc99a0e6e8ee343c60319f0fc2a966faa8d7fb5534d291d1b310bb64c448ba169f91ca588fd703c2ff602f430c10de06f3a28009d3abb43b78358cf4fcf5fe83cf97b5a60464f5d70a6ee674867b2ffcf3f3b5c8c0fa68d43f0bbd305023f0832835e06051d8abbf910ef2b3bdd0f225a28b420242190cdad1c6604515e8e4debe55dc38758c47680e84e22646287173c8f87332b51243178a4f9bea81939c999c1c9305ccf009ee6b21172b75906fd6f72b74e0650fffeb0bbfbbe023bd918a7cf7f275cfa861764d1eac3b167299376c54283ee43e27ce82fd472cc6267dd96925593b6278fd4733284fa6a9ab9ee09f30d7eb70aaa8d58a2bd9483954bfc17fb0e75e22cfb610baa32cbb2a6bc5d78e4d54d83e44e98b86d45294b701ba98bc655b6da2d58f5bc4889864446ee6b8f9cd8beff125285d9b6d792178a0e381e5db3e33f13ece40566b733042aad2245dfbe9142d1d9260156fbb5f3e672d30f7792bea4b25e0822b8bb12ed6ca79e29a9009b3fbd3aeeebf278d6fa8a88b043db1444b6de5fa71d985cdd015c27cdd43e7ad623c4f8a975c9dca16af6aaa305e697df269eaa29703ee01cfb538bdcaeebcbb23ea05905997a249f96bc60119adc67cdcdc4c78cb4c613833bee8a960f0c6a6f783a1c2f5b4f76a73c34146d9b8809c7c12bebf231c8f41ddef9b74e4f59f7626b6b738be03eaaaf4644013d03c0335548e1eda8f64d728075cba4571c75e0723dfea9dcf0fd5c9207265bee8e0a41b93b1b980b9a918b1443c91b8ba4ff064edb43c64800659e286f18a598349fa004579d23ed18e61cc8f2fd3bdafa6237c186f02535fcb3792e92d7814aebefee1d2036159f291b57e7d09a561d508f3ce60bcddf79492e7ef757690e1197365e9988afe96ad4eee6a9a8086af7ea7beba17f6222073a76679c9c614454c75f98db1c73226950643125092df669e2313323eedd2bee2a3c01e52f2a6bce5ffcf1c0cfb95c42167895507c95eeba4a4f0c8bff5e8274a91ada64d1ca2c768b6cdff1c83ca0ad179971db19c35b50ed22cb3528e56d64a72b77ac2718c34110189a54316bfa6a4e01a162084d4170afbb1e49a648d0ae64f1fb84bc4ee45c168bad3d6cb4061ebedbb11e0920c9c2a3c09e3ffd2d98803b6f044776bb96a21dfa92cc765b18398a956ff8b32906af9b420e571ef22a8c9fc67aa05e4ee953c608e829ee826130e03f8f2bc54f350a2fb12d71f17ecede0c7e449367fc33d1e3a636071354c38bb1c2b4b33e45c48dae7fe55dabdb25c311ac810e33a6408945ae6f1ab56c56276de1b96bc749839a3475f0dbacf59933c04c1a351b7bf0f5e174ffe7e63cd54ea6d55eef51c6c885775088218e0a9838349f5f9fdaf54622955e93b36a5f05900d05e7ebc0f98800a4f63303b6b0e62676f43adcd1b476513784f1e1d3d31edd938738730fa2e5623cdbcac8f48a7183d462a1481e686edc5d0788dc0e7dd595747875377346e4f36880fb156788e3616e2582fd421d8e555abd985f5be91fca492f8cd3313e09e60c156d0e27f9e708783544b64cb4560a7fce9757490cab10ca1246e07c0295f5d9a68b1618985f522e3cd18652213db304716a688d997a696f9792986c7377d8d0e9f5015ae99cd3f14ffb23dbd3ee091d4e843cfadfc84ea93e7583fb6f813aeb8d6fe61aea9252ead7004c4348947f7a22831111c294c24f1833facf619951752e6afba5b5a62e7d15ccb6585fd85fcbc5fa10d177656d272b38f7a835fd30ae70f003258c56301664a2844d155e4f603dc15f86e92a468aa819340ac82e58927aa8e0beffc13909a56c579d6b61355f2eac9a7240dc980c79c31dddfd22a92b5993883a90f28ea04eed56f19fbd60503872b3521835fafad0009cb09d7e7b8815f2b134b95db6e5c0cba3fbf47f19fe9669ae6a1254251a19974cf38e34f5c59e084d9029ab1012c5a7033f606ebc8176e3f7da2ea70e3ddf4adab71be3e173a2a167961629b5c863df0943f32595d363a67b6c631327696148ae4cd283794b2ba5933f155c680523ded3c2e4c34743d3a75e688c1b82826a02d59b7852b430a794849fd090914093bb9be6f3337d07ab358e40794157f121d90afc1ced7", 0x2000, &(0x7f0000006c40)={0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, &(0x7f0000006b80)={0xa0, 0x0, 0x0, {{0x4, 0x0, 0x0, 0x0, 0x0, 0x0, {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x8000}}}}, 0x0}) read$FUSE(r0, &(0x7f000000ad80)={0x2020, 0x0, 0x0}, 0x2020) write$FUSE_LSEEK(r0, &(0x7f0000000000)={0x18, 0x0, r2}, 0x18) 19:43:30 executing program 1: mkdir(&(0x7f00000000c0)='./file0\x00', 0x0) mount(0x0, &(0x7f00000004c0)='./file0\x00', &(0x7f0000000000)='cgroup\x00', 0x0, &(0x7f0000000540)='pids') r0 = open(&(0x7f0000000080)='./file0\x00', 0x0, 0x0) r1 = openat$cgroup_procs(r0, &(0x7f0000000180)='cgroup.procs\x00', 0x2, 0x0) writev(r1, &(0x7f0000000040)=[{&(0x7f00000001c0)='0', 0x1}, {&(0x7f0000000200)="ed", 0x1}], 0x2) [ 374.978004] BFS-fs: bfs_fill_super(): loop5 is unclean, continuing 19:43:30 executing program 5: r0 = openat$rfkill(0xffffffffffffff9c, &(0x7f0000000000), 0x2, 0x0) perf_event_open(&(0x7f000001d000)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x41c1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) write$rfkill(r0, &(0x7f0000000040)={0x0, 0x0, 0x3, 0x4}, 0x8) [ 375.023752] BFS-fs: bfs_fill_super(): loop3 is unclean, continuing [ 375.052122] BFS-fs: bfs_fill_super(): loop2 is unclean, continuing 19:43:30 executing program 3: r0 = bpf$PROG_LOAD(0x5, &(0x7f0000000200)={0xc, 0xe, &(0x7f0000000780)=ANY=[@ANYBLOB="b702000003000000bfa30000000000000703000000feffff7a0af0fff8bffffd79a4f0ff00000000b7060000ffffffff2d640500000000006504040001001f000404000001007d60b7030000000000006a0a00fefdff0000850000000d000000b7000000000000009500000000000000c74396c8e3ebbadc20e5a7ef8c9ac1465c3a1f59916ffc9bf0bd09f07fb2ea80e5cf8dcf819b5c0c00000000000090af27db5b56024db96b4673b4e8d5467e3554508535766c80114604eab9b290a248a120c9c6e39f403ff065fd3052aae80677eeba68562eaeaea5fecf298ca20f274233106e2baf69b1c66c01e4099f366b89ab63ecf772de7b265040b6b1acbef92b2704550a4d1dd5c50b7420b48a93fe94c756108afcd0b2eb785632e0a85f02a5a6474ae549070000000000000094fba0ed5020e6477cc921fee1f6d8ad6a80d0947cd6d4a561ced23b0b4a902be6af7ec2d1ba0000000000000000000000000000000000aaf25343063e6581f9e6de14ad72e5ad84309fc4c927ec6cd20cef7ed95157abb19700f0077e9d13d8b93eb0f2c6f8941e35e1577c10e509c9b134515d3d2369f516a49eeeb1a662c849eb709df5c6ba73cccdfa3c58bc5204339b0b487f0eeed581cb202994c41d322717c338033213c18a34ee0ca2cf61efb4b3797a642735d6d482ba98d252f36c54333aab1aa736369393239820f5f1557b0b2962c2f7ccb0a5a13c714e0b1a5bc3f9caff3283076cda3d0b1a2905cf7bd04f1de44bc40528ad807970727fb819afa14aad99f93093ced7dd51995edcf53b907228fa9e83433eedb4ac88d0285594ffb0d14e71d5c57f33702f22b22417bfb38d04c8441ceec8bcaffbe800a041"], &(0x7f0000000340)='syzkaller\x00', 0x0, 0x0, 0x0, 0x0, 0x0, '\x00', 0x0, 0x0, 0xffffffffffffffff, 0x8, &(0x7f0000000000), 0x0, 0x10, &(0x7f0000000000), 0x2ca}, 0x48) sendmsg(0xffffffffffffffff, 0x0, 0x0) bpf$BPF_GET_BTF_INFO(0xf, 0x0, 0x0) perf_event_open(&(0x7f0000000100)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3c43, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0xfffffffffffffffd, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}}, 0x0, 0x0, 0xffffffffffffffff, 0x0) bpf$BPF_PROG_TEST_RUN(0xa, &(0x7f0000000080)={r0, 0x18000000000002a0, 0x27, 0x303, &(0x7f0000000040)="b90103600000f000009e0ff080351fffffe10e003300633a77fbac141441e0002001be3e7d2a182fff", 0x0, 0x104, 0xa000000, 0x0, 0xfeb9, &(0x7f0000000640)="9209558f0c5fb25cd57f98113135c3171b8b331fbc04f0e6955a796ff8e3aae3cac46cec3030dfc999058aea01f0e6dcf2f9d480d328655aca003927bd50ed49d4843c8a0a2a4b26ceb747947200bd644c85e7a8a7d7cfce840c02a7d69c9e0bca410f64d43290abbbf3131e1fa8bd8c3e5f19d5a491d3d4c1a0fe47de9eebaf073ac3da6256bdb681d18fbd607c9b0d710442bcf78bc36fd3c035812bde582a262bff0e4d6181c818fccf542868c6e602d97bea23a101955dc76bcc984142ab305387aa348566d688edd291a3e9d08952adbdf60462bb7f7faebcdfccf17115708b0d73d0f3a469ce7d8374219b3f92c92bcec4958d474bb281c26691949d054b784a5866f081e53eb9cfd7", &(0x7f0000000100)}, 0x28) 19:43:30 executing program 1: socket$nl_netfilter(0x10, 0x3, 0xc) r0 = open(&(0x7f0000000200)='./file0\x00', 0x80240, 0x0) clone(0x100, 0x0, 0xfffffffffffffffe, 0x0, 0xffffffffffffffff) perf_event_open(&(0x7f0000000100)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3c43, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) pipe2$9p(&(0x7f0000000140)={0xffffffffffffffff, 0xffffffffffffffff}, 0x0) mount$9p_fd(0xfeffff, &(0x7f0000000040)='./file0\x00', &(0x7f0000000100), 0x0, &(0x7f00000004c0)=ANY=[@ANYBLOB='trans=fd,rfdno=', @ANYRESHEX=r1, @ANYBLOB=',wfdno=', @ANYRESHEX=r2]) r3 = openat$cgroup_ro(0xffffffffffffff9c, &(0x7f00000000c0)='memory.events\x00', 0x26e1, 0x0) r4 = open(&(0x7f0000000200)='./file0\x00', 0x0, 0x0) gettid() fcntl$setownex(0xffffffffffffffff, 0xf, &(0x7f0000000080)={0x2}) fcntl$setlease(r4, 0x400, 0x0) r5 = open(&(0x7f0000000480)='./file0\x00', 0x0, 0x0) dup3(r5, r4, 0x0) ioctl$PERF_EVENT_IOC_SET_FILTER(r4, 0x40082406, &(0x7f0000000080)='[/C\x00') write$cgroup_int(r3, &(0x7f0000000200), 0x400086) sendmsg$IPSET_CMD_CREATE(r0, &(0x7f0000000280)={&(0x7f0000000000), 0xc, &(0x7f0000000240)={&(0x7f0000000180)={0x80, 0x2, 0x6, 0x5, 0x0, 0x0, {0x0, 0x0, 0xa}, [@IPSET_ATTR_SETNAME={0x9, 0x2, 'syz1\x00'}, @IPSET_ATTR_REVISION={0x5}, @IPSET_ATTR_SETNAME={0x9, 0x2, 'syz2\x00'}, @IPSET_ATTR_FAMILY={0x5, 0x5, 0xa}, @IPSET_ATTR_PROTOCOL={0x5}, @IPSET_ATTR_DATA={0x14, 0x7, 0x0, 0x1, [@IPSET_ATTR_LINENO={0x8, 0x9, 0x1, 0x0, 0x7fffffff}, @IPSET_ATTR_SIZE={0x8}]}, @IPSET_ATTR_DATA={0x14, 0x7, 0x0, 0x1, [@IPSET_ATTR_PROTO={0x5}, @IPSET_ATTR_HASHSIZE={0x8, 0x12, 0x1, 0x0, 0x81}]}, @IPSET_ATTR_SETNAME={0x9, 0x2, 'syz1\x00'}, @IPSET_ATTR_REVISION={0x5, 0x4, 0x1}]}, 0x80}, 0x1, 0x0, 0x0, 0x4000000}, 0x84) 19:43:30 executing program 2: perf_event_open(&(0x7f0000000200)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x41c1, 0x34482, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) r0 = socket$inet6(0xa, 0x400000000001, 0x0) r1 = socket$inet6_sctp(0xa, 0x801, 0x84) setsockopt$inet_sctp_SCTP_SOCKOPT_BINDX_ADD(r1, 0x84, 0x64, &(0x7f0000cf6fe4)=[@in6={0xa, 0x4e23, 0x0, @loopback}], 0x1c) r2 = dup3(r1, r0, 0x0) connect$inet6(r1, &(0x7f0000000080)={0xa, 0x4e23, 0x0, @loopback}, 0x1c) r3 = open(&(0x7f0000000040)='./bus\x00', 0x141042, 0x0) setsockopt$inet_sctp6_SCTP_DEFAULT_PRINFO(r2, 0x84, 0x72, &(0x7f0000001700)={0x0, 0x0, 0x30}, 0xc) ftruncate(r3, 0x600004) sendfile(r0, r3, 0x0, 0x80001d00c0d0) r4 = socket$inet6_sctp(0xa, 0x0, 0x84) getsockopt$inet_sctp6_SCTP_RECVRCVINFO(r4, 0x84, 0x20, 0x0, 0x0) socket$inet6_sctp(0xa, 0x10000000005, 0x84) socket$inet_sctp(0x2, 0x5, 0x84) getsockopt$inet_sctp6_SCTP_STREAM_SCHEDULER(0xffffffffffffffff, 0x84, 0x7b, &(0x7f0000000000)={0x0, 0x666}, 0x0) 19:43:31 executing program 4: timer_create(0x0, &(0x7f0000000440)={0x0, 0x12}, &(0x7f0000000040)) r0 = syz_open_dev$usbmon(&(0x7f0000000380), 0x0, 0x0) ioctl$MON_IOCX_MFETCH(r0, 0xc0109207, &(0x7f0000000080)={0x0}) r1 = getpid() r2 = openat(0xffffffffffffff9c, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) ioctl$MON_IOCH_MFLUSH(r0, 0x9205, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x1800003, 0x12, r2, 0x0) preadv(r2, &(0x7f0000000280), 0x18, 0xd9f, 0x0) timer_settime(0x0, 0x0, &(0x7f0000000140)={{0x0, 0x3938700}, {0x0, 0x989680}}, 0x0) tkill(r1, 0x800000015) 19:43:31 executing program 2: perf_event_open(&(0x7f0000000200)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x41c1, 0x34482, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) r0 = socket$inet6(0xa, 0x400000000001, 0x0) r1 = socket$inet6_sctp(0xa, 0x801, 0x84) setsockopt$inet_sctp_SCTP_SOCKOPT_BINDX_ADD(r1, 0x84, 0x64, &(0x7f0000cf6fe4)=[@in6={0xa, 0x4e23, 0x0, @loopback}], 0x1c) r2 = dup3(r1, r0, 0x0) connect$inet6(r1, &(0x7f0000000080)={0xa, 0x4e23, 0x0, @loopback}, 0x1c) r3 = open(&(0x7f0000000040)='./bus\x00', 0x141042, 0x0) setsockopt$inet_sctp6_SCTP_DEFAULT_PRINFO(r2, 0x84, 0x72, &(0x7f0000001700)={0x0, 0x0, 0x30}, 0xc) ftruncate(r3, 0x600004) sendfile(r0, r3, 0x0, 0x80001d00c0d0) r4 = socket$inet6_sctp(0xa, 0x0, 0x84) getsockopt$inet_sctp6_SCTP_RECVRCVINFO(r4, 0x84, 0x20, 0x0, 0x0) socket$inet6_sctp(0xa, 0x10000000005, 0x84) socket$inet_sctp(0x2, 0x5, 0x84) getsockopt$inet_sctp6_SCTP_STREAM_SCHEDULER(0xffffffffffffffff, 0x84, 0x7b, &(0x7f0000000000)={0x0, 0x666}, 0x0) 19:43:31 executing program 4: timer_create(0x0, &(0x7f0000000440)={0x0, 0x12}, &(0x7f0000000040)) r0 = syz_open_dev$usbmon(&(0x7f0000000380), 0x0, 0x0) ioctl$MON_IOCX_MFETCH(r0, 0xc0109207, &(0x7f0000000080)={0x0}) r1 = getpid() r2 = openat(0xffffffffffffff9c, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) ioctl$MON_IOCH_MFLUSH(r0, 0x9205, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x1800003, 0x12, r2, 0x0) preadv(r2, &(0x7f0000000280), 0x18, 0xd9f, 0x0) timer_settime(0x0, 0x0, &(0x7f0000000140)={{0x0, 0x3938700}, {0x0, 0x989680}}, 0x0) tkill(r1, 0x800000015) 19:43:31 executing program 0: mkdirat(0xffffffffffffff9c, &(0x7f0000002040)='./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=00000000000000000040000,user_id=', @ANYRESDEC=0x0, @ANYBLOB=',group_id=', @ANYRESDEC=0x0]) read$FUSE(r0, &(0x7f00000021c0)={0x2020, 0x0, 0x0}, 0x2020) creat(&(0x7f0000000040)='./file0/file0\x00', 0x0) write$FUSE_INIT(r0, &(0x7f0000000080)={0x50, 0x0, r1, {0x7, 0x21, 0x0, 0x8690d1}}, 0x50) syz_fuse_handle_req(r0, &(0x7f0000004300)="1827dacb7cd53e01b4852de2d748e21fa033071acb841f449efc23d452101807ae5c485596338a6d31388444ae8ade7b60a85a37d3db29ef19ae4c4d4db9c2c82c7908debb2e2b5ebef336aad77bef942d064955079af4e914f372cec8ed0440f6ee0bded3c565283bdb75124011227712d5f01e8c1eb86cf69205a8b5b374edee58ebaf09d62191cf41190260c30a719bbc9bc29be0d60c678791de6b236c9b5a057247c281937c2b2ae747c858532113e0a1e7af49298ef54f15572301d3c907b02529bc470beab8f9208cf92b17a9df99ceff90a1e384d6bda3fe823d8eff0e2229a43c31781935de69466b1082c0f88d3716f234e1d6e17e1360f6621e686d661af20eaf08cc97c261590ac3291667a87bbf66f86d9005f034ea5517b2187b6dfecebc1cb8fc4dab511a2890a68ed185483c548168803f353520cc6f820d1349ac985e12a3ff6e8a78b29ed97213962fca3ba7d04d1ab4dbcfe93a88831f784ed278d079eb3e2e69d3161600fc7b0dae825b510a59c14315fc6ca0ce68dafd088f02a92ae0ab3f15ca1a863b640e8e4a89407a8b8d752892e1f8b0e793d430c3ec46cbe2b6a4bdad728c34e734864aeac2b6b2eb51c3a2f9e6773c5834166511086dc35847cfa17974889795ed305353d41c9399bb95936a3c1be1099f21795cfc04d9699929eca65a0edcae5d4e564404e5292dc15f40d78d94be9e8dca92983bc71729ab30a70455bbfd5a98d97cab9778d9b7b69fb20019e7e7c7bc17c84da1dab53a187a116ac229e00312c95b1074afff18a8771a4ab47be2205745836dc3cc1ce531fe697e9a734698fb2343b331ad9f13214d1d7d511dc646fb8b3b70fb4611e6d102a0e2bda6311ca824537f699efdefbd8a3a523e26272f07abd75504188edc788af9c75aabf77f4ac883573f63ded319fa5a8b6317d4490391879629446fa5ea4c695f3db9739f7bc1da7a19f3e1c0ccca98307b3a7a38272b7455c8957b17138c9e170c27895fcf47eb5530948b7cc43d61a621293b0c83dc893f02def2b42a8bd7ad6c9cdfeb7a3bde141e98e5af7500b07d85c6314949b754c88cc666bdaaec89271f56ec11bfa0aa337feb1140b8a07fbd5c79bdd0239f8aa1d454c0e5a16e99d38d1212ff709bb1964c317c98bfef37b56944666f0320ec85b5b1e07731de5584901f8c65e14fd2ba83b500fdbb137c7cdf91d66400688a5da6405ca7e0b8107ed65be0ef5c6234b62f613e7e76d6f3d5cc12bde4342391524e25bab6ec0a358c6c66b7cdbdd9301f91589af65cb7c02fe8271a798c5e122fef9e7581d28884d33d01f0475c9ac052d2d014bdc09e2738487742f7bff40facf2e96dcdfefa336c46923b77b334daf7b01a9fd5d957a29b83adf6f23acc507a58dabe6b2804532bc1a865a01b1126127f7c6a8029531db8a51d8472c0abffca5be97b9b5433ad220ab9ad65cf94a1167f3fb2b8804ce66f9f5cae212724b2b3a04343580f5919f446f40eaa0177f25ebe68ee7c7a35d9d5ef6e1cb220eaf8ad9b269b15c2ab9692c345f3c3bd5965f06adfdfa2d672b5e3184ebe192f73e70e829adfac2e6318d238dceb6e3d7d1422d57ff7124793b92966bd229c0725b0d591e59c57f98841b5ffad16d0ae903406014d3e632d0654e9084f870e124046f3ebae3ecbf5c5365aa32ebf169ccf1243dc8fb296cef006d5f00447ecd2980abb98e3b6e6bf6181e5df7994ea1c1273784af0d92a57394c71926dc143228a8ade103ff61860d21ffd467b2c41bbbd2490dd36add865828fb64396f16831a3a74f57ee2254cc93b25b7219bc00339a2518be3caa4765ed63295c84f1d59144e96aacfb57c6441f64f29729bb7d68127ae2472bbf089570003b1e820191878ab6f53db01c180751e34672cf5a96edfefe164580d6101672281b59f58f3c7b1222f2b6d19c8a8e5f9ad539045f7dbadaa767f993da974dae20744bf5ad0e0ec71ee97696659981e067463c78bd9337b8bcfc070e7e5b47303eaaf9651c19f19a15eab8e2c47041828be50994b5695ee5fbc9a9ecacf9de714215eb7992c07f262db8843937934fdf6fdd31d0f3a44f074f3a1dd6622dbdb3364df79d5ec90ead64c29e05a6c5358cc6b9d8493b7e1c53a91c37aa3653cf2002072461f4b99fcdec142e53b87f61ea55cdb834dd4e03f2f57a206cabe2f3f3cbfad3b4117bf4434718022b09a8419959a9bb97fba50a6b3b9a844cd1301de7bae89f8d1bf549b88dd2bd0697e70ce89cc2e383221ca2ae9d3671a730466c250a8963f6411a42ecc85a00c01b2b43c39432d5065a5fd11c29a23169891cd674cf3a31e82587a26c8d48aa3debeaf067a26669599fae850126dd516512e0cf5ab556b5582add7d2f665723a2244007ddc302f0ec29da73578a80c998849be2f766a334c7ade4dd46f37d648899da5cf7437af2d6e8d03d934903387c4c7e260909d59b546dfac9ffdce11fb92e5bb6ff6836fa0e6d0c5942b4660fdd68d3cc8a76ce0960584dbf634695ca75752b19067ba535e4779189b111c9a3e0ea877067c046d10021b0e60eae8d5dd7536b4474d8ab74679e2d8e68bc9208db5561e28d0bec177cda1e2f944a4cd97b6432033ce40063cbced6b36e486b096adffd699c9fdf58d5ec54bf4afdf52493fbfcd91e807da31ff675b567058697aa088118a6ecf1b7c7dceba3ba87d59d882fce3b3b676763ed658e991c4fd5746946815af0a2c1e96aeb27383cf6638d6d7e1932b3a028250fee18db7c46acd7fab33ab22ff91cf78029a4ed96494151652213fb7dcca0a8944568bf84aded113e20e6897d6b8f6f9fe5f6975c7cbf999d15ce5f8d50454d58e7a5b285fce4ef9d14758cf4a9619b17275fa66f2c6c48d44da95657708062bec9b633ba2df082766f549c5c1b661fc8a5f7b8b6699503da733a66df44f116c4a470b73648cb64bf04101e7bc1d048d230addbf22a5b98aea08beda847e33552faf771d9b181f610ce34530543096257856ea3a08276bec1ea40e7bf6957143623ef47b5c41e61d076eef0a5195431b49beab9fd7f07b1a153491a7250a889b26ce657df550b226fb94cb5f52306f47ee3af4627ef0cdc0c50536af7b386440b878ed5d672670abdb3ea3e3c3c031e67293104a4d6476cf325f6fe4762ce2351dffac116387baadb82f987cab7fe88ce1be7d44ccd572bfd29114d2ce4d5e90f4d6bf7be39ce25ab7de52815e4059d783564d518dd208714de1c524ff69a4ec5f29bb631eff605cc6f30a0bcfba44810a3a6fc263891791b51cb4be0d60d3d0798e38b01b9a21150589a436fb4df4584bf6e7094176884921bbb0f87b1bcdfb6df8aef8f58393800816c15647650448da0ba5bb76f7bf76c3be83aceab79eedae80e1fb46a2557a9485aa7a8053a5835e609fdf54222f5b43cba63c9508dbbd0e22953768f88e2070236d7255f682464d09c7ba12b2e8787a1bc889af686d2c355961d8f92f877bb09baef09d70b5b306047d8d3cb97fb06ba8d09bfbae02314dddf98092b6ef275743e9deb391995003d83b549ecd604daa9bd34ef311aeced5db504242241c0717f8302efedcd3fd43686a7ee21c73ba3c5af98c93d09158c9011e11bc4b51a3a4e904c4b6ced1a786adf310073405c27df6aae6d5da4398d78622ba9144ad09902da49b77046ad22fd303f07c1533f271eb82794b402382d2971f46c7907069907a7afb9e94dd4071685f91cfca10d86aad7c385e4d90f0d44d37588a8f1f267c1d8445634ca4194d1a0c5894a6d00cae3af3aec991cfefda59e3f46c0a6e2fac55b35259a9960ec7dbd1c7dd128368393f0de1e0994ba1f5b41762c22213f56bbf4c2cca458dd5731f9379f0651ba61fbf17a5861eb417e20a7fc9df12c6771f5ab322213ec95beff96dc1811dd0f45be8fb1ed93c2cc01e694620b550e45bd265fb357f52699cf9ca3ddf331fe4d11c5e97bb57631d9c7620b5c19562c85ef8e04ecd5cd5b713fbd94b6b76331a83f304cd8ae1a903ffa722cf5697b1e1bde206735656ce57254744daff8013f47f9aa4f062d8c5956fa8df5ee79d6e6ffbc0c47cd0c99517a6d92fe8ad18c001be4b55af7a6533712c6a2ccb7e813016e7cb74a94bf2a2ce9b3b440faae19210d43320cb81a6472d1da775ca27f2b5bbe5964271eefccdfa0bd6b163357af4539fdb5d5e2e7e1795040776d4d75b70928b8efa954556f4d225bd9b6f9e5a71a8e7a3ef5c36d459233c66650ada1c55dfa02bca3997f93b92028881d9c3ec0e7e1a42c587482b0cfbc77e8520c6ca0f3e5127c96b41056b7279d9e62358e39dc95e779affaaaddc8e9ee66ba336feca8b957ccb4f352c0d162390e3bde27b15132407c97c3a6b5f1704e1e559ee12655a71d7dce3711c8af907d7d2875e2407ff8c59c5457678058d3d00a7971d239c1b1c67dac3ff3fbcc2d8c8035e31040118ac46ba5110a16aedd0b7f731a4f86a63a697501a664946eaf7da6d3cc2a296f294ee765b8f26363ba6116e0ea0ef8eabb0f1e7cc429611194cf0bb66463d26a82dd118cbbd3f1040dca2f5f82ac5eb5df41a4658fcb34b68066c5708a4a16c48fd290b32e392e7f5b662f4e3fa2d79a814f52824cf737872604672bdaf80fc527deb1f690339c92b6c6c6c8635de5a2e1a7ff617d0f1c11bc3a3504d0de94d77678025ab5bea511d783df148e58b0793251db3b7b9e03bb201be89d5939c0a60ab548460d543d015082e00ad9d05418c327ebafbad7924aaf70e5fa6eb0be359b65ac2fbbcad495b17712e033cbf1853d1e2450ac4c8d19287074e76ca3d087d376b0f861b525d4949098dd4e3a3cc50118c8587adf6587ed9aa0352b7d812fe66bb64eb0c0f4d46822aa9c3d4848454d49b61cca24d7d6b82fafc5d8eb4e40e3665f24a95182b70b22c5f9303a49d1278f25de9855246c729fc8ba300fad799a949b9b0ce303477d22337d599d4c8441461d25725965183210a729fc59c4e5ddb45c0b9db06a09619e6009aa0653cd1e8b06d0e55c133d5022dcf91f12a21e9f977de2485f886c5133a8837987e7bc90662156b0250cc76cb03ad9fa36733ef371479ea9c1313682866b963f1f96bba8c658e2c6a10e5e29d8a07d4999b735bdef7f60326aa64fc198c3f2670fa4a44717fc613f1282fc324fd9476e6da7866cb6ce1efa8a1577088f2aa757584b8ade9f2ba34a2287870da2cc7704008b6e057eaf8bfe2fd0d6d60cf03e1751d2284c6439ee6079708451e64b1f7e7dc8400ae99e0d834a7daba6c3a8219812adff0760129e18a41eb0448c57a909714cd395933436e9ae040277f213e30ab7b6e7e3109642ffa051b3c423f6ffa7830c75d229acd617d6bc1f7948f09238f5437ff4fb302034fec1fed96c55c46c7d70d6ab3018c1a3d76120077f815fa67ec8815f44fd0cae7d1509d217a432ce904c778f201a508fdea4672e9cff797bd1d0f58d46f39396e148573ae9b2468e4ee5bd9a5abce8166333c524f0a104da2e3c99ddbc51fc6f4e7c628af79c93d0fbe61b1c4a72b11fe423597f126467a01ee6dad848f24abdfe453592f02c84e017fe553f27e639f88824d70aeeaca54758184f95f12d696291798046bb075fefd6876e8ef893f5b9340e21fc63c67feb6f03055f2f394a591164a61b1aab14c468998175b75974543e79b241dc69a6e346374dec5eebae154e36f29d17273e608ce69d539a5e4702f474bad66fbf3348f0c859bf884576faeeac754e290ec97e863526e55420da72b6b6cd209e6685ffb64e9865d00eb017c843d3c0cf3ab26f53f76316fbe009f0b2c4932b0694fecf1a148dbead458ca9f5f6d678d6c6fbd23fb6aea9e951914300eaaaf69bf35d4ce11c0349a02aa14529a083e701eac0177d4ddb305a9f9a5cf8bacd96327a161bb8b877813ea022d62bac8f0ab9eb5e9d145dda4b1fe79c0bee34c8bbfe866ba376d3a71b9809adda06e64eafaa6cf53fff8ed63e15525fd409e13b1809ae6e6e937acf858a59d2073b304171d5ab35ec92f66fbb2d4e34d46e886c3546c1026d0ff27821a15aa397dbc686540d546ea66fb43dcb9beaeadde6250cfe8e563f9033b432018c88bec07279c6a0228f3eb11031d3435d95c9c1789a5338f74aa6db2c853c87f8f2397f9067fa59774770f64b8ae42b9a07f85f1bcabbc6d3b3456a253bdb73ad3de0aa416589b722053c81db90e7b66a835d636615701e6869fef016bfaba9da0a869005ffc3174b605fdabdb8c7346262ce78a64aa7036960913edfffad202d664d1771018de43b6548a6672f48979b8e30017a93da2c093266306e09eb203fb37d7d54466fb26d4414ba88346d02d8811f100dcb0a3e50ae46247b986b928f12c1ad506c6b33b49d7e6955ae9619f73c79b72a95b053d53c4c54d36dceb8ae780b321aa41b5d61caa21a6c65329f08da522bbbb3d07501b39cc6bfbe4a2ef8054d7c57666bc805ed451517a1432b958141f3ce94752a67a17aadb41590037da8efdb251eb56de30b0e0e75adfbf4e06d4777f843a8d7c31e2ab62d98764217491d46960d67d3ee1213d150c28e75d1f440d41ffc3cf876554e2d4a354f70fce17e4c0fdc64992c32e785263ca4ffcab57d3d46d220627ed05f1628551e9843137996bc7a0b773e1ccfe5364216a8003757ffdc052d93793a3463baf4eef5dd283826f8510bb1f20505a6e61cb3d571d0f77e67ff3c0aa5ca91f6d68c7e0d2d79c649b091b30b2911c5c47157c9c531296eba681e039eaecab83722cc2fd5b91913a463ba9f693e34da60b1adb8ee9f4a83fa67e25f19e4cd6e19ed1381cba8b5b4591109637ae1f7f29b5495fc5f8057da565d937e7577735bd98fe626ce8568897d240f054ad69c8e0ca424d1be51b17d5e639253fb2fe6791e01edcf9c4f8404233d7f98b52c31c4996b6b63112d0126036ca20cf52a2da2478683c41bfd8fb5b34de59d5e87b5075e5e1d78ad06c6a2f6e662145be3d30d140b62c49df203350ea4412c97aaeec7aaa00d81b89f3b7295607840de2a8386f52012b5c4e6e0e1986565bc4f99b6bc10f3a2ab59783a8b9f3c696f741af0f51b6592c68ddff861fc7d2b16876b05a54eae9ec0e170fbf26d9358941c6cba50a5c41e77f72c7f41e0bbf6023f04f7701f676a64cb63ea1a8d373ee6a99ba56449699ccdf8a11dc7d840d695cd5ef987f74e5b16594cc8c6c2251c47b429281b6e34c0288c7242052ac3c9c63213f6ddb08726001e0afe1fb312d463db8722f1617972dc7f365de498027ef0b5c6d100e583348cd777a2afbfd60ef59969c8f88358b6995c177a7d7e69d86b11e36f42bae8c9af599d3f828447c31004000163bb74ef20f656f6a1c8159bd0f867f2e283c10656a40a397b2e514c19efb5d5a5f54316509801bd8208a2c84b2ef13e54d7b8af8787b826b50095a15e33a5e8e306454312a83af7869b7ba0039ca601751b580a9190435d35a8ce9d8e9558ca1bcea3cc3604f4e991aee79fd0d2393b9f87e8dac7782e837e1de5e88a7c79385a2b14556041f49c1113df43efd8aea14c4b651d713fc9989b2fd77ce13a98efef5e83cc6843d313117753d82870c5efec8cc6fd855ab6e0fc6d48c66874fdcb2d007db7fbb9371da3836eb23da1106283a20e32617bcaba574b7b6298d48334eaeef905ff348c2bfbc1c83a88d6915b644d1854161ab4f1d1db12e74de2853e48d1a10f9835c226bca6944d0de6a18e0e07df45ad72a7d354045a6997ffdee010e37091a3a5280e5db8aeea0245217a6f1160a6287d9a28c0eeabaebe755b9485da5b7ccb85166ed902e63200e5e8ac464124bef0196eddee6cfe90fce770b416817e1ca78494786bdaeafa3538841f74bbdb2585d63f667ef227287efa56c030c0999e9ead590f1ce383a138233235494ecec0aed97c803b4d7c4fb80ac9a3bcb1dd2bab51382a94195bee034c3f3d3d9efc44add83ec580a5cfe8f5942b1694b0ab3ef4b2d9f7c0b8634b056c6b6eeb946be1825fa452abdbc1545cd94774abed3fdc2b0399929298221030f6cd0a2b38490f5e4bfd53ee20de10eeb2ffacca980d40e0885cb91c94a4d81a61d863efd0f7a12da233e1dacf7af728950892ef887abcc5e4d08c6b57834a1e5dd1dfc69418fc681b47d8cd34c6a3846b0e1afdc7c7f9033ff817a72ac617c0a1e59e4e6ea40bd668c499f221c5f63700e74b68ba3045b4460f0fa60308cf8964d95237d888d5c1b1be0fa7bd2703eaeb0d2914b8d22cbd8693c16f21bb72566f38aa97e86f212557d40e10b285e1d4de0b153c8f91e168e9d0031bb7ee7fec5f0c3fbf15bc6fbceeae6dd363b7e9835b175b0be16a3348a2c2d07468449fbb2fcfca9e7d8b72b623355715a6a1edc87ea4c699ffeacb2277fbb5658a1eb12d0a7a93bf100ab11cf49b35c16a14044ac8e5bd69af05b252325f0eca41f90681b4a1ec399096939a96685926655a0c4d172d06646c87f35b65c0d7654882b79838f78c35febbdb378f9f28d7e6ba1c1fa191bbcdbf991731f546439a966e4f7a15c77367161bde14b731c9f2b91114fa46e02e70f07d3c40988e8140866ed3dcd98ef5524700deb75c1a6414016da0ce6845e936a8692b7beac01bc855a72a490c667c3b755ffaaa57af54af1bd07ae7b203be85f3653aa63cc5ae10f6e585c7bd8a5257604e82fad6c7be6f1a47eb665c1422c03d3263f351671a48bd5eed22077b8c16e706f009880941c29b90c29a11ef008a371b29200f32523b9847d911fab4ee1468bf98a49ff73703e2d9d7bbf6ae37459c3cb502541f304e1d5918518a06225b65f3b38b91f8e0b49a29ef9aacca369ce5cf8b45738e29118ab06078b885189acf4d0a5200b86cb2269dde90dfada27975dbe6ded12232c0faf7ea12ecacbdf416cff8632e48346478a75c0279c1920b7556fc6670704d5d97912c75d3a9cffe6891abdf747a6850ba7d9668e56c7e7ecc03c5c388e886bc984c8bfd9f470b7e4ea4d146c3c28e4f8ff82b9558266343036e6239a26f567f7633911ccc51522c29ff3ca36ad5b8cfd6ec1c86ae08f30d87a503c909e66dc278e9d14f3fae4bfa4813f315b1610ed76fc149d92f319044e813c3769d4978637e0ee732d3bb86e9fa584181f41d4304c07a1cb71d10f07da649288275a213eff161c536c7366d4c010cf9a4b1c2f2940607dc7468e51204c6983c554d616d48f93ae51e6a7769b3285785ae7bcba3cfb27879df1d7f1f18849a70814eb51df6d1d8cbe80b736cb38326f7db7a06e49cd4fe41b3f7a9156cfac9222ac23d13765e7f2910a365fb23a208f192cfca97b2b8a3de44a2d90d3c865bec109f4bdfb1d37216cf5f71a27c39a83b5562b0c06d76b46b2d8f5b15cb1765d6c78d065d24bedf72405dcb8e795fe183196a6b620f918a2dd7fdfac142aa653fd431ec153e3daac8f615a45b3a0d665d5fe36efb6e2f18b8399429e4f363748eddd5cd2a637e9a0a553fac6d05a3e2bd1b26f2f99433f8f59a3691417a4f35ff7d46a22e39e94641d942706850cb2843ff4a34122e37dcc8224ae9f6ab7f64ff4a0bcb0aaff2f429e4f0f5fcf90ab6a2c45e8f2408d9bbd4f60d6b01a0cf527895e1cd063b178b8973930b9488d81d3f0f7985b900d0a894c29642b809ef39294bfaaa5401f5ed50cbb91a047b60ad54b323a2f2ada04d19d6dbda02e0f22d4d6520f9db2263181c97c9bb74dd8a90adedc80bfd064eb103f67d02ea17571f870c779470bb6460c658da4c502b9a10c8050fc26ad5cc1ae1eb02f0d703d05b48f48ab8c9f9a1bd000181ccf929d45544b44e9a3cd0bcd412ad639323283ed229e5486a2a93babb165880a0a7329834bb51a0631cba5caa30637ca3f07074051c608b7c7170c8c415c2eb88bd6a798bd86953ff71052506ccf0e2357deff6cef24de5b7f68a17082c08d096e43fbe727ab0ab1aa27a703ccd58168039e50dce2d400ed7f2a217c1eea7b29455fbf910d36db324d1c6b53343a78484883ad100a0b5b28c74ab6296df5bf8048fb916e8ddda0ded3f5b08d262b9b1cb1ecb149c02a21490ebebe8856c844d448d2a3878dcc930c3c88d9addf73917e9d3f878fb12fba3e602cfde199a0e69eab56e3d4ffa01135b3145baa613be01f0b94af5bd3b8b432339c954f52b8551fd13790bc1ee18be226b819d8001a3da8e097f84c166e4002e4c1043d3a3721f05105cd17a278b9509d7a04826e8a5b4956bbf976ffb4857fd88da99cfea8d2e0a1c4f52f71f87cbee8c02fbf59b12bdaccb67d0b95f0a56693eafafeefce1953d708b56532ed5bbe12626a3d041c031b48a47b34c504f7dd57e21147b920c058385ddc8cbea5332086c269b0d5c2439f30fa431f88d1a10e25eba0df70d8617ecd5546314ffeae9c4baab872ab82a45eeaf0e1e1533e8a6189c324f31b652aeadc52981b66161313999c5a7bd7c79ef4ee55c7cb00ebd9637ffe01924508a44ab72ab16b70b8b815ce7d27772db315122f4a5a7679af5ac685c26320a71cdd8066b19f749705e2e35d1d9166ecb066053dd05a759270e119944cf99b918cb5e4e6c931031ae2eeffe349ac246c92174091c687c58879e1f05c43b010f7ec3f204c106cf60740b0bc2d355f57bbaec7d060dedab9aebaa4094e72ebffbf61cdfb7d69fbd146daea59339fa83c19c5f75b866af5e7f387740e675e1e2ba29c261d9e7237c6e9ef1b39a8fdacb44de0eaff5f4f9e3e42b75d0a37834eab0cf47acf65e882f0962e01982e783c0dae7efbc95dccb235562e5a2e04fd2b4b43388c0292e6e8198c6df0348920d6e1c8acdd2e892d3f7aef7703824dbb08695642f0e444ade6c4f1ec1e267feb5135cccd50fcde643acb66dbd18f507496957ced435e0db0a8e8441a8e2ebc365f995c32399f7d180b6faeb85ee1921b95f82f3194bed7d157e842257d2da26dfac90f32fb53147e48e232d5115f1cd12b45c55330b29775ab776599afa504b7fe114cd7fb3ab4eb6c30becb82f448b284b20010bea918019af99b2a9ccab1585aec19fd1abe8365a6023f96dddf1a37cce2734bb6585143729850bcd811787bd07cb5fdd57cc987f9278b7f5ef3c7529a9b6d20d18cc4446f1036cf7635da6732986c38df4785e2e428f14b84957319772bdbb7d2d2d20321e522b1ec6c807f3a3f575643d4b71e1bbd1e843b5816aa68900298f5058c65a9fe1022978a44a77bde2b99e221de97cd7fa6a2ea440220bac20e3e4c1e4224958aca15681d3a18f74218114c3e5eefa1fc16de8c07f1d1297b0e772d05f205337175c1dbe88dfc876dcfce367304afac68c41b98ed2ba3f04fd1b37db27dd5d9c9aafaeadfcc44585908ea655ffce1fc2516b060256777e8953e2a6861ec4460034691aed001ea2971627615fc7972773d6a8c343117bae3fc68cfd1f187c478c0f52e86b118c65c39848a8c582ed908fb1242ad3455288cc858e52e119d368e00783c2b8c2916ba564a3501326baefe1dcadac8b4b8b666f20a3a245ca171b43af", 0x2000, &(0x7f0000006d00)={0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, &(0x7f0000006780)={0x90}, 0x0, 0x0, 0x0, 0x0}) syz_fuse_handle_req(r0, &(0x7f0000008d80)="9653e1f8dee4c92e93feecece464dfca3aaf6d1c3ea7734b3779ef227f374c39d5b3c1e148b57cb85ff5c1925f1145af6e9835ce55560c4f8d1c728f26c8f4bb69844be49a33e9fb682b820dbca0305774716091d2a8cac8865e28b976241e25967857533490ddd54e004cb56e0c2781b83680a86025fb55e6ca7edc0290dd2b3a24c765fd70403c8fc6fbb40bdc122911cbaeb374795f05a416932c6399e1ed25e135cd5c10123fb6d2f2ff67362a4b61ff80b3e4f12094d63a9ac8de22f5b3d6cf0ca5a3d54e35205e0d72fdfeffff72136209b09dffd30ee3f8084cb98eba60da5f6096397ac194c5f5a161aaf94d9d3a7f924355e1b341d4e2b3a30977906408489387a1f80dcf3b060a5e0c399c42b81516c212db69656638a5d0587c83f6eee4caae4421d54c25b01251fc33967810ec579bb23b9c21ade2479eee6bea6625af17d0a32076200b8634d52dd6e390414e228bb27ca0d7e08e42b68edc2c8692545703d43fdafb88785216ef0e15359419085da1a2487b996ff17eae18ea603900ecbc2dd76303671c92437b409c718b9e51adfce6e4d9b26e285bdc6c0ada71b3e83494758145b2d672d737345059280a8e0e1b72ebcd3a27034e6b72f3ee5dde9b9f3e0e68790654acdedcaa3efb3364d7c742d565a665c4782e6fa38ac09f82a8aab4af987238a1116dd4a4f13740d2b7ef4fa7f295cd901627256176e51842690f776c910c98877343672e9d2032596cc54a841261dfc2b78a1194741e8c28968c7563ba95dd43054edafe341a12153ba7d062c1ed547fcc6efadc2ceb1209da301dd897ca41236ade90f8db68e32ad66140e01bb46b2be3d009446c37713a2d0655e00f9ec4cd72a6955917dcf4af92ff761f7654eaabf88a6228e4c9f77661bdda59023d3d2cce02c35e878296075642c97d647f76f7435b3837a921bd6f388497f74f105bc02ac98c33e17b3b028591ff5cfce06d6b4d97f55ccac9b07c3f1eebf0c1eb1af0951075ed2a296e063fc09a94f533f7e3573cbc08e462c3996147077f652ba219d0544099b5556e52f72109b954af066504ab4fc2cad36c0e2fc7028f5ec488ccf84d5270c37665cc275b2f0c42cca7606596391a056c2dd7fc41147fa4716e52bfb5891007878196d9348b48719e8de58fbedc955f0f7973ac752292f787e2f6e077684779666aa44d2f11d1196cacf4c77456205ce4b176b2775a4eaf56ba7589f00aa586244d88fc40e2be4676d76a9dca23195006c0be5ed7214b6b9b04fdfdf4bdf9a0f4b54e1114f8767aaf2085cabd6eaec4ac32aed8f9633f9e7006aacd70311cc7eb70dffbeb0137cf2f9f9e76b9a5b9ba74d0930559d0d9588558c0823ca60a925ee2b9d9e0c1346c5a5a0c6e44285f4d642a5ac26c97fe975c4f8a26d37c597a700114465d2eec58179aca75acc14b73260957878b978aff0786793c3bdf9f1bf2defa1c4a3aed5c99eb8b1b64bf455f2054016b666a97854920533f4241771638d1049f3f1779260935e6802f5913d0a60a29408ee424bbaa3f9f536463cecc9fe23163fb1d1428c418f91d05d8de2c92a9d3b4c59ba3deb2f320372fa2f3418f3d1d3cfcfc6caf8e1872009a857ec4134de41572a39c5324b9dcb878c95833631bfb662e39e339bf1ad06cf7d1eae4b2fe8f7e2fec9041bbd38a635bb54a17a7d6080f19da7ef3099be97bd6b59d5339259de650cc11d694fc12450b13bc95ae2362927b79472e4330504ae4658bd489d54476b33ac371a986290f32a2afe2e46b809d8beafc7e0d5493e55f0a267a37e03999dd557dfdb4d7c59401e0a2c7ae298ee986e8936a6c73d3113298aa69cb6f1d19073bfbd87789819c9151ea6ecd2793c106fa5fca7d2c788ffb4b26dadad1334ca7be7da5c823063bc1c90e693ff9014b4a4738d3c20f444aa2262da239ad12f9658b7bd9b09110476f769c55925ed02ee3d1de6f851359b7714aa7606e663a5f507ca1de1de0d82889ab8c0645aa2718a0bb143be109499b950d2968add6c77189c1316a1cb5fb48d43e4a514e574cbe900006fcedb09afeba7b112ec81e8980696789d4ae7f25d9857c3bc2a0c122ddc80e1288adfe9add682463c2556d813ab3c7e4e332412d4508dd058089d8e6586f2ab472912e51e67de1675c1492447a00cb886c84b82204167bd112ea17db259a1525ad9d524d7e3abb9b1797412ee8ba604018c32df510b83c2a084c8548fdda3ba7563383f8c6c4f19f4e9828e900580492bc1a07534b0c54c597dbee18917b9317943f9399b3fc0d3c357297808de2d4473f5a3c4b802a4241208034ca5c3452e714c53cac7406b4d5bca993c937987a572790d8529bf9e961e03173067976c9a3aa14046108829d7c32106feab5fcc576be7b815daefe64dac84bde39c38e9ee9f58215d30021b26bddfa210b115a34deb8ef0ee7c9a1aebca06be55a857cd61618ec217fbf5f04414f0f85d694806562364289b612a6c058c6de51d3b0739600a4fe03ad2516f2c2b87f18571545ff6b70461c92ac9bc8f80e321da15d547ebf91086d33f8bab4cf0b3888fd2bf1abecb9a9af985992f6504a3afad4aa61018e84491377d9754311b4dd90fbfc379ead51dd5c922b6874d483ba19c575ea5583a010aeedb35633cffd771588f6e6f891cc6c05289b939fd4eb5e01810675763fb3b22d4d7d18d4ac0d909d4dd198302b5f9e47d83ec5f123a3e43d55d031f745d45408684ee61fc33bb165bfad38f36e6cce1a3f22d19107bc2b12ba35fc359939cdbfcc00d42c0613765dd89f4e09779986925c4377bd07fe3bcb4fefe339a364cc48c55914490e2a07a644aa021db434f9c549096beb0a87f9369d774f95a044408b244c20cf29059da6c25d71a5011c5af94b816461431010cbd7e8164bfc5820e01b4d28adf6c12dbb9d0bc4de536d112d47b875f5766fcc5a66c63a043399b7438c007ef5b9a5b7bc34887146e5c1c5775980b77bc49a8cc4e96b26ec113f802f42100ccfd0e815fe94c64072c2075832b3042e2845b914523b220b0ca52e1eb98362562fb66c2d8de93b67b58e02e1a83e06ba43ddf892d89b280d3f865ee2970d9d306440bccbcd3daed4c4b35fdca85474a3acb69f2ac9f63a414f88ae0067cd3c300ec67a53ac9f9c094375f375193ff643164c874740b90df1361e3cd6330763f84c7ab1920502e86a3b61333c1fe3be427529409e0d1fbb74a6c8c8385acdcba7e71e1bf6e4eb9a3dc6531cc59e3a23b0fb9874e4d76a51fb5a9a84322dfa6c34d03e3e321cdd321cf504eb6708aabcfbe44e62a6874119e1dbf6408f91eda6bcb64486f5a3efe72b9d3a75236e5633c1d6bc98f78b6ca81f72eae3c4729c7073793343b2e3da2e6b915d575b13dcded805de0305b75ce9450004ca758b2b6db9fd337d41127e2ccef7c54fddb7131659a679f16602384b3df53ad8165981b34acbf7bb898ed5d3c6bb9164bb75c2751204e8fad5914328035864c40eca5baba872a92eb5b2bfdd33d21bf4b3280361dc04fa257cd4b3141248f72821c39658cbef23dd249512513d1d95bd83ae72cc551bf05eeee7d534dfaf10b53ca46ecade06b0dba55ebb58afe31297e3787d9f5cafa3492db119e8cfd60020db919e0e4fb70f0fd1bc76b95b72f421178f70712a3bce7a09820bc16bbf59d0332d62be06090f5508eb324436960fef05d89b5892c73d3dbd921b3f7ccce17b0148ba7703eadb593fbae8de4d208f45dc10f400d1b68a430f89ccf17a67ea7e377660048bcfc60cbfa3c220c7986d16f8bd43a1632f6d00d8a8d9b83002917d936ab7910b124c31ae9b8aaa9122b6ff4f6fd9392e0e65847f73fafbc0d8fa1193fe86cf45e3edfdf96a58839bc55fbcf7c1ce8ad3ee2cbe80f0d5cbe9d8013aae378a5990937127b366101acaa14bd8d05fca519ba8e8b6b5bfbe2091c47c7854914ca23195d7bb2c2c95aaf8930fec5e9119117695a6daa59c98fca7389112feb0b4adae232af7f6cc4e222c44ca763a1b88e2249c3e57508bc968ef7aafca551ef269bea4ed607f0b6a75fcccf396f017eca4332f4aae6328a6a6eaff5e484ad3a44340b0e23422a82d5806cfe9a7193b6b6b739b5fbf30a90be438e8a5c172d77d28d010f5bc5fedbbe8e67e535187e2335be9da316d9401bca4fcbed9fca7e6630057a7b662a4c88f05556b78b4ebe99d7967c7ab43bc1b43a91c7c057b72ebdf4cb36251186859a1658d1d2f552470dc5ed424e6f3b555539d839f90d447222e8787076b6dd0ff1da3c3af28def1c24de3ff0a85d829ebb14d10047961315213141d936372458b9385db222837ed17075ea61a90ad4d6f5498025c571db7ba3cc2831fc35b8c647acccec32c453b011291b2a849a6cca9e1616b246cec3ad07453d2487962ec63dd078585373378c7eb4784ae02db47553f4a240c82303b5ee2caaae40af00c1e805689fc9641c0c77301f3e3fa0fe53b91fc2f06f0c439b84abb2282ab307ca76266572c09bc51e348a7639f8afe3f6bae27a8404f867ee9a13965f9303958c645f33a0caedfd5433ff6c795e573f5bf070bd137e77afda661a0644320eafda5f991caacc1e28c66ecb1033da661a2344a1ccd779b67cc8475682d9b30a69678761b36f1b688918bc391b7f5074415aab74da6542cbb49a95359f64c3b3373b4954370c604c9d10b8b42228317e3e53f87535dd634bc3574e64c4193188917a5f3f05d62184fde854410b0afde444c613063a5cffedb7cc55ba22423d0fc0cdcc4ac03b6fd3c4c04220ffcbbff2f22aa836ecb02fe8cc4c4691ddd5c6a2e08dd0037dd33f9e0c1556f585f51beb08da41b288e1b0f95f2747421241ddaf0dc345dbe41fa7d2ae0c19b6f5760d9fbbb460f52e006f75fda434c074c51ff0a0aa9e0aaf39bd7409e6a8dd569afa79362ff6d2ff29954f8b37a867fa6aaca071c22180ddbbadf01b66811d43cc3025193098931796f6e34ba098ebdc1f8fa064e5e1c319b20c92349ffe05e425f08c4a7521c72d910ee5d6ef58b1b396d57ac0ca5af0db91f0917a4e622bb20a28ff74eb75eb2bf754277b4b0583ea4749b803d87a514708c2b592d12d2bb712886cddf6a437790ee3660710d0ccb171b1dae436905f313cdaef09dcaa95aada9fbfae8be2ad4b07c182f8e5f183fa35f2d44bab5305f91f439eca3cb2310376d09b89d5d7502943550b09afe17f37823ac4b140771e9ebbb604a97040527c96dc4a69abe95c9e2ade6b7fb54146db7d1c3c65e994e95d7183a6f26c58bd1b64e2d47604af405b776cc139e813538b974a0b3b2e256f72c89da14c0267b7963a0baaf42ad1f4814cb7f18b900243456e8f37ff8f66fe05e832bbf1803b1f25c4cf73971fc85c472eaa7470ceb3845577299618bed46577e88efc4a1aeeb53b11fe14d6c14b08045a09906be068787fe418c8d9d4748285f8158cedea1625b7c4ad53db588a3728c0cf4f8dda27b0056a1ce1d4555867a694676c8eb359ec4c11f603358fbb7ac483f88f899f123a0a6e8dd6fae7e019a9bb545e93a1aa23bc2bb43128341098d35c5b16f60891864a44ff7215e914dd365ad842f35de0ec7a35667f8ad456b16b9ea97dd10f2a72a4a9a6ad0835e6a9880e0ea32bb1e641028b601e571e2071a97d6a4ff348fe3692d207d35246082d239b0568d680eda958977242d58ce0ae4123c1ecd883447a0973d9196e4a06b604291f660d954707c9430e3afc5084850e756e20603640afd435c5702e352a77960492b45b299c0a1f5ff06fb60f81d39f0d280a23e272d92fd7b27fd6f84228b3b24a1506fd0dbc44a019220962679c298cdb512d86d5e24547750239bd1b93e92552f3ef7be00be5f5f66766f62c85f8a57a4e5be7751d83218cc6dd8080970cb51562ddebcac434236e02b260c31c110dd2dfa9a925946af5e3b80992856791a611edf823345898c2b1cd68ca108ddc19b0df63c42aa26e3c105ab62b2397ee368da34a7ba4d54d44694528fad331b15980f7992d45d077055fbbb9ba142990ed0c247ca57a01ad637d81b929a6316088a61f18c800152b836c33935c9b7f6a07287b5d18e5b110d5be42b55796a4e0e2949f1b5eec2284d58f74248149d206921c608cc8e36c04c70a3b74cd7575fef2d5cc9c6e7d2791595b2b9ddb6ef49c2cbe740c8baa19032b82b6aab8fcd3657bb3c5b51940432ac3e808b170507d846c38dcd158a5fbb704bb0c22021962c29399d3c2930035831f8c0f164b5b947e87a1c4593aacb02f71365388189884e10655815336643aa85cfc37d736f35904368ac0b9cfceed691859bf0083d9be2860e59fc81fd339b2b5b48622c121c71243864f92cdb076b4643f45ea6195f81bd6b607426ca5af43cb1b542d09047ced15b814a94340f20c2b3687efda42e775fc04022d1e3bc4469ce5837ace06ec8c48cb997d09a47a5a9202f707ea0e071e1374f98a879b9a6ab782c678abf12ea2ef95c050f1affeadf4f3e6825502e34f60d20fa98aff763e1c9a6c818cea9911045bbc5d7a07d5cf13ac30b87e89b0186e1986f75105a39cec44e0f0a17ef10c84d1c16b0c110996290ed46936056ee2e28ca90322088a317c84d9314c89af776547f50d5e9d2f95837f421e981efaa1a681c5b6dc13cc97d1e10d5bca314c473b2b5c8e50e2a8eab18ef59a4ed32cd5ef87b8578fa20424de1a937c2c17c2d38b64c51bb82bc93fa91d2b7c4f572a7c9c81d23717db3398412b1cd66af892ad314993f31d20d9c2a1cdddc4f015257acfe561bdded7bbf7ffe3302a7531e49d97e9fc255166d496f86a5e4d8b4be3064d183f6da7bc12b66afcb9123b71fc3dabb6bf752f5cd8dec40cabb15beda27823e72efd96d216f40da0ad90a67e93c05b955eb5239c9ce9bbae439637be5b11b71374745d9f33592b473f8d43fdf3b740d976afed1226894b3f0a3887465fe39113fd10472e95ef159d3365a3080bf10f431961f68e0d414bb7f9a6a6c288924d21e4638a862e78f0bf1d1d8d9cbb17501a9e5150f516f81a888bc6489da6c80b00d065ce941d7cc2ca3075fabc57891ebc6910fd8b5918efda4ca5859eea667d5f27581bedbed8cbb83366d7e3d5a21e50db1cd3d80ab4cea4a3256effe9a902b29cda6757d926cee9a514b859295c0590af218cbc30c441bef3c3f4236a557337a21c089b298a4b7e9d2f6f526e268c8cbb0d1e1e7076f5b0e71aa8238dc2f3b3092c1acea0a3fa2839b4c5c8dab8303880623e98ee423a858087e39df49fd45db27cf0f7d339df3f1911ad143a93ed50907e28d7e9d55c124f199b5b1c072c4a53fe3b778cee0c01a7a639a5f94f796164feb035cc8ad2fc2f887886577cd31efca4617ccc29eba84976814fd38cee098f6e7b5045422521679ba73db51920e711ff670482033d0b793d35499a2b99cc6bdc86c83a367ba723767b69af4a15b7bf9b1987ccd59dc91b892f25164fae725c85e53b8332480dc6cb85d2858c23d417b720a06feca5dc007d66bb4724d45f30fdcd00329ab5c483e3e7e52f08e3bde82ed390e11eeed52b1febc706e5ba38535a37c1cad2a776faec7689cefab86eb3d2e851a6c1a2028742134ac0cf1c97a6164cf4914271d7ed29d9eb339a9d91f65f49fa90de357aa005c9d82b9c79d08303e3c58ecba42d8ca46d801a87bc2cbe382a3b8e54d205247a9b8788b7cdebbf734b145640faa7b30383dc2e1d26985f0bc0d739ca3b809cd6070c56a30231d420310e6677c83f4e7134ec519aa0627decfdbea9608954bebb899af4f5e297970f118d8dcd3247440083852d3b4f86eca30b2ca74fd3af1cd68e876abe8d3f29a62926c9089d976fc25bb7b7637192e5d71c13b473e1652b546830e9e5a6c22578ac47988a652192591b0d835225a4c50f91da7d0554e63a7ea04f6e4db55cdee5ba3cb9c0e92b7ab0bec62d8434e1806f47e69a968adaddd2c05c3bdd5b938b97aae30675664527f6420ce3c371b9621d7e162b503c16eca572f347493b3cb3830b8abed28d293ea429342d9ec42bec9b9f0d5fca4a314cfbf6cbb6a7147729dc46aab27405b92fdc9e194a8c7ac707ca41fbb85069246c78cc6e845e55a70a9da4bf29645fbc087063fbac3b00c4bed518143835b6d140eb957f704eeb30d096b4e7940582d86e4a06a5a221404695c2869e7b89cee9ed7da67cc4969cb485ace8c7a78a4c0337855cd5f44ddd89d38b12f540b4b0d71df1022f34a56cf0f161275165d9a558f0c2921d5a1adcc8b19c7d2e4ad595ee6ec7a2b5391d1e81815bc7cc00f8bc885ca5e85f89840564f7e86d7702479a04b4a9e5c505dbf6917775aadb28e29451a663a555e86fb1634aac381acfac5176c28eb19921c822b2a72f1da0a0d114b00ad48aa1fc2af7136b8713fc99adb7b8491a6b2019e7d71786245d69eff731351dc385b5b66f05d84a022dfd6c54769d0b43176ee8671420ed54cee33e2a28565e36640ff921e04c065488359d6eef0fb1d2488f88160b83c8929a96efec534375ae7baff73c6ba9690ac2333c661aa752f9c19f6d600d0fc9e0e6dcdf663181ed7159d489fb3efbb046841291d30ad8d93e91b379067fa1aa1489797d08e40f5852ed63c9e507daddef1fd0c1ef2e54047a6d87134cb263c7c319faeb7d1cd9eef25ccff088a40b348c787f1be497c95eeb2d431e16b32f1b110f368f9fef09c700519d28776eec6883996f4f0a47cfa60e948f4b8f21d6dbe6f3d0a534dde3cfdd9c34eb576cf7b238f99ab5f5b75f2ebb13f8ffa187c60925b3cdbd82c93268f7e098a45ec96786ce0af8006ad21f07ee2fb19311f2816ff4e53472c2a9ae934d400b325a10763e5b6aea437a4114fbd129ab49346ea3df01df47181a882da3eb06762e5c31f81f67affa612a1da03f6c7a22570ba38585bfa574a7321f4a83f1131c2bd83714da0bdc9f2d488a9e0aa9dfee22ef9249896505ad86e19f13593d3a3dee89cb2e76b238c1bf23da34eaedc26da2b515e87182d6a3e644c79c9e0b100fb8538348364e519574ba570a57956f21668d3d29a81d542ff957f7df5ebbb12180eb9096ba3e165feb30770d0ad93f96428578504d9fe4ff38e4633892382bfeaa1847e36349054eb63b233cbb7292d55209e8fe438a04fa83628e13f5071a9d7cf5167fbe769cc61557878dec4ecce664aae040dd21a933da94bc7872ad34081144853d3da80fb4d0c4496c3d54e671c3651cc7a55c0c1bbb682a4be9767315c64047da3ae30e78e4dfd2d1381f1b205df563b81c7cd18fe1a25f3b73b52230815ce3fd87b3bd01d91ddf2a8d9b6ffb733ff9246998ff1ab9559ed8c46ea9d900133b98ae119a930c65e150e5a1ccb243ea0d93c1114918ae02675fd3569dc99a0e6e8ee343c60319f0fc2a966faa8d7fb5534d291d1b310bb64c448ba169f91ca588fd703c2ff602f430c10de06f3a28009d3abb43b78358cf4fcf5fe83cf97b5a60464f5d70a6ee674867b2ffcf3f3b5c8c0fa68d43f0bbd305023f0832835e06051d8abbf910ef2b3bdd0f225a28b420242190cdad1c6604515e8e4debe55dc38758c47680e84e22646287173c8f87332b51243178a4f9bea81939c999c1c9305ccf009ee6b21172b75906fd6f72b74e0650fffeb0bbfbbe023bd918a7cf7f275cfa861764d1eac3b167299376c54283ee43e27ce82fd472cc6267dd96925593b6278fd4733284fa6a9ab9ee09f30d7eb70aaa8d58a2bd9483954bfc17fb0e75e22cfb610baa32cbb2a6bc5d78e4d54d83e44e98b86d45294b701ba98bc655b6da2d58f5bc4889864446ee6b8f9cd8beff125285d9b6d792178a0e381e5db3e33f13ece40566b733042aad2245dfbe9142d1d9260156fbb5f3e672d30f7792bea4b25e0822b8bb12ed6ca79e29a9009b3fbd3aeeebf278d6fa8a88b043db1444b6de5fa71d985cdd015c27cdd43e7ad623c4f8a975c9dca16af6aaa305e697df269eaa29703ee01cfb538bdcaeebcbb23ea05905997a249f96bc60119adc67cdcdc4c78cb4c613833bee8a960f0c6a6f783a1c2f5b4f76a73c34146d9b8809c7c12bebf231c8f41ddef9b74e4f59f7626b6b738be03eaaaf4644013d03c0335548e1eda8f64d728075cba4571c75e0723dfea9dcf0fd5c9207265bee8e0a41b93b1b980b9a918b1443c91b8ba4ff064edb43c64800659e286f18a598349fa004579d23ed18e61cc8f2fd3bdafa6237c186f02535fcb3792e92d7814aebefee1d2036159f291b57e7d09a561d508f3ce60bcddf79492e7ef757690e1197365e9988afe96ad4eee6a9a8086af7ea7beba17f6222073a76679c9c614454c75f98db1c73226950643125092df669e2313323eedd2bee2a3c01e52f2a6bce5ffcf1c0cfb95c42167895507c95eeba4a4f0c8bff5e8274a91ada64d1ca2c768b6cdff1c83ca0ad179971db19c35b50ed22cb3528e56d64a72b77ac2718c34110189a54316bfa6a4e01a162084d4170afbb1e49a648d0ae64f1fb84bc4ee45c168bad3d6cb4061ebedbb11e0920c9c2a3c09e3ffd2d98803b6f044776bb96a21dfa92cc765b18398a956ff8b32906af9b420e571ef22a8c9fc67aa05e4ee953c608e829ee826130e03f8f2bc54f350a2fb12d71f17ecede0c7e449367fc33d1e3a636071354c38bb1c2b4b33e45c48dae7fe55dabdb25c311ac810e33a6408945ae6f1ab56c56276de1b96bc749839a3475f0dbacf59933c04c1a351b7bf0f5e174ffe7e63cd54ea6d55eef51c6c885775088218e0a9838349f5f9fdaf54622955e93b36a5f05900d05e7ebc0f98800a4f63303b6b0e62676f43adcd1b476513784f1e1d3d31edd938738730fa2e5623cdbcac8f48a7183d462a1481e686edc5d0788dc0e7dd595747875377346e4f36880fb156788e3616e2582fd421d8e555abd985f5be91fca492f8cd3313e09e60c156d0e27f9e708783544b64cb4560a7fce9757490cab10ca1246e07c0295f5d9a68b1618985f522e3cd18652213db304716a688d997a696f9792986c7377d8d0e9f5015ae99cd3f14ffb23dbd3ee091d4e843cfadfc84ea93e7583fb6f813aeb8d6fe61aea9252ead7004c4348947f7a22831111c294c24f1833facf619951752e6afba5b5a62e7d15ccb6585fd85fcbc5fa10d177656d272b38f7a835fd30ae70f003258c56301664a2844d155e4f603dc15f86e92a468aa819340ac82e58927aa8e0beffc13909a56c579d6b61355f2eac9a7240dc980c79c31dddfd22a92b5993883a90f28ea04eed56f19fbd60503872b3521835fafad0009cb09d7e7b8815f2b134b95db6e5c0cba3fbf47f19fe9669ae6a1254251a19974cf38e34f5c59e084d9029ab1012c5a7033f606ebc8176e3f7da2ea70e3ddf4adab71be3e173a2a167961629b5c863df0943f32595d363a67b6c631327696148ae4cd283794b2ba5933f155c680523ded3c2e4c34743d3a75e688c1b82826a02d59b7852b430a794849fd090914093bb9be6f3337d07ab358e40794157f121d90afc1ced7", 0x2000, &(0x7f0000006c40)={0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, &(0x7f0000006b80)={0xa0, 0x0, 0x0, {{0x4, 0x0, 0x0, 0x0, 0x0, 0x0, {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x8000}}}}, 0x0}) read$FUSE(r0, &(0x7f000000ad80)={0x2020, 0x0, 0x0}, 0x2020) write$FUSE_LSEEK(r0, &(0x7f0000000000)={0x18, 0x0, r2}, 0x18) 19:43:31 executing program 3: r0 = bpf$PROG_LOAD(0x5, &(0x7f0000000200)={0xc, 0xe, &(0x7f0000000780)=ANY=[@ANYBLOB="b702000003000000bfa30000000000000703000000feffff7a0af0fff8bffffd79a4f0ff00000000b7060000ffffffff2d640500000000006504040001001f000404000001007d60b7030000000000006a0a00fefdff0000850000000d000000b7000000000000009500000000000000c74396c8e3ebbadc20e5a7ef8c9ac1465c3a1f59916ffc9bf0bd09f07fb2ea80e5cf8dcf819b5c0c00000000000090af27db5b56024db96b4673b4e8d5467e3554508535766c80114604eab9b290a248a120c9c6e39f403ff065fd3052aae80677eeba68562eaeaea5fecf298ca20f274233106e2baf69b1c66c01e4099f366b89ab63ecf772de7b265040b6b1acbef92b2704550a4d1dd5c50b7420b48a93fe94c756108afcd0b2eb785632e0a85f02a5a6474ae549070000000000000094fba0ed5020e6477cc921fee1f6d8ad6a80d0947cd6d4a561ced23b0b4a902be6af7ec2d1ba0000000000000000000000000000000000aaf25343063e6581f9e6de14ad72e5ad84309fc4c927ec6cd20cef7ed95157abb19700f0077e9d13d8b93eb0f2c6f8941e35e1577c10e509c9b134515d3d2369f516a49eeeb1a662c849eb709df5c6ba73cccdfa3c58bc5204339b0b487f0eeed581cb202994c41d322717c338033213c18a34ee0ca2cf61efb4b3797a642735d6d482ba98d252f36c54333aab1aa736369393239820f5f1557b0b2962c2f7ccb0a5a13c714e0b1a5bc3f9caff3283076cda3d0b1a2905cf7bd04f1de44bc40528ad807970727fb819afa14aad99f93093ced7dd51995edcf53b907228fa9e83433eedb4ac88d0285594ffb0d14e71d5c57f33702f22b22417bfb38d04c8441ceec8bcaffbe800a041"], &(0x7f0000000340)='syzkaller\x00', 0x0, 0x0, 0x0, 0x0, 0x0, '\x00', 0x0, 0x0, 0xffffffffffffffff, 0x8, &(0x7f0000000000), 0x0, 0x10, &(0x7f0000000000), 0x2ca}, 0x48) sendmsg(0xffffffffffffffff, 0x0, 0x0) bpf$BPF_GET_BTF_INFO(0xf, 0x0, 0x0) perf_event_open(&(0x7f0000000100)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3c43, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0xfffffffffffffffd, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}}, 0x0, 0x0, 0xffffffffffffffff, 0x0) bpf$BPF_PROG_TEST_RUN(0xa, &(0x7f0000000080)={r0, 0x18000000000002a0, 0x27, 0x303, &(0x7f0000000040)="b90103600000f000009e0ff080351fffffe10e003300633a77fbac141441e0002001be3e7d2a182fff", 0x0, 0x104, 0xa000000, 0x0, 0xfeb9, &(0x7f0000000640)="9209558f0c5fb25cd57f98113135c3171b8b331fbc04f0e6955a796ff8e3aae3cac46cec3030dfc999058aea01f0e6dcf2f9d480d328655aca003927bd50ed49d4843c8a0a2a4b26ceb747947200bd644c85e7a8a7d7cfce840c02a7d69c9e0bca410f64d43290abbbf3131e1fa8bd8c3e5f19d5a491d3d4c1a0fe47de9eebaf073ac3da6256bdb681d18fbd607c9b0d710442bcf78bc36fd3c035812bde582a262bff0e4d6181c818fccf542868c6e602d97bea23a101955dc76bcc984142ab305387aa348566d688edd291a3e9d08952adbdf60462bb7f7faebcdfccf17115708b0d73d0f3a469ce7d8374219b3f92c92bcec4958d474bb281c26691949d054b784a5866f081e53eb9cfd7", &(0x7f0000000100)}, 0x28) 19:43:31 executing program 2: perf_event_open(&(0x7f0000000200)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x41c1, 0x34482, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) r0 = socket$inet6(0xa, 0x400000000001, 0x0) r1 = socket$inet6_sctp(0xa, 0x801, 0x84) setsockopt$inet_sctp_SCTP_SOCKOPT_BINDX_ADD(r1, 0x84, 0x64, &(0x7f0000cf6fe4)=[@in6={0xa, 0x4e23, 0x0, @loopback}], 0x1c) r2 = dup3(r1, r0, 0x0) connect$inet6(r1, &(0x7f0000000080)={0xa, 0x4e23, 0x0, @loopback}, 0x1c) r3 = open(&(0x7f0000000040)='./bus\x00', 0x141042, 0x0) setsockopt$inet_sctp6_SCTP_DEFAULT_PRINFO(r2, 0x84, 0x72, &(0x7f0000001700)={0x0, 0x0, 0x30}, 0xc) ftruncate(r3, 0x600004) sendfile(r0, r3, 0x0, 0x80001d00c0d0) r4 = socket$inet6_sctp(0xa, 0x0, 0x84) getsockopt$inet_sctp6_SCTP_RECVRCVINFO(r4, 0x84, 0x20, 0x0, 0x0) socket$inet6_sctp(0xa, 0x10000000005, 0x84) socket$inet_sctp(0x2, 0x5, 0x84) getsockopt$inet_sctp6_SCTP_STREAM_SCHEDULER(0xffffffffffffffff, 0x84, 0x7b, &(0x7f0000000000)={0x0, 0x666}, 0x0) 19:43:31 executing program 4: timer_create(0x0, &(0x7f0000000440)={0x0, 0x12}, &(0x7f0000000040)) r0 = syz_open_dev$usbmon(&(0x7f0000000380), 0x0, 0x0) ioctl$MON_IOCX_MFETCH(r0, 0xc0109207, &(0x7f0000000080)={0x0}) r1 = getpid() r2 = openat(0xffffffffffffff9c, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) ioctl$MON_IOCH_MFLUSH(r0, 0x9205, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x1800003, 0x12, r2, 0x0) preadv(r2, &(0x7f0000000280), 0x18, 0xd9f, 0x0) timer_settime(0x0, 0x0, &(0x7f0000000140)={{0x0, 0x3938700}, {0x0, 0x989680}}, 0x0) tkill(r1, 0x800000015) 19:43:32 executing program 3: r0 = bpf$PROG_LOAD(0x5, &(0x7f0000000200)={0xc, 0xe, &(0x7f0000000780)=ANY=[@ANYBLOB="b702000003000000bfa30000000000000703000000feffff7a0af0fff8bffffd79a4f0ff00000000b7060000ffffffff2d640500000000006504040001001f000404000001007d60b7030000000000006a0a00fefdff0000850000000d000000b7000000000000009500000000000000c74396c8e3ebbadc20e5a7ef8c9ac1465c3a1f59916ffc9bf0bd09f07fb2ea80e5cf8dcf819b5c0c00000000000090af27db5b56024db96b4673b4e8d5467e3554508535766c80114604eab9b290a248a120c9c6e39f403ff065fd3052aae80677eeba68562eaeaea5fecf298ca20f274233106e2baf69b1c66c01e4099f366b89ab63ecf772de7b265040b6b1acbef92b2704550a4d1dd5c50b7420b48a93fe94c756108afcd0b2eb785632e0a85f02a5a6474ae549070000000000000094fba0ed5020e6477cc921fee1f6d8ad6a80d0947cd6d4a561ced23b0b4a902be6af7ec2d1ba0000000000000000000000000000000000aaf25343063e6581f9e6de14ad72e5ad84309fc4c927ec6cd20cef7ed95157abb19700f0077e9d13d8b93eb0f2c6f8941e35e1577c10e509c9b134515d3d2369f516a49eeeb1a662c849eb709df5c6ba73cccdfa3c58bc5204339b0b487f0eeed581cb202994c41d322717c338033213c18a34ee0ca2cf61efb4b3797a642735d6d482ba98d252f36c54333aab1aa736369393239820f5f1557b0b2962c2f7ccb0a5a13c714e0b1a5bc3f9caff3283076cda3d0b1a2905cf7bd04f1de44bc40528ad807970727fb819afa14aad99f93093ced7dd51995edcf53b907228fa9e83433eedb4ac88d0285594ffb0d14e71d5c57f33702f22b22417bfb38d04c8441ceec8bcaffbe800a041"], &(0x7f0000000340)='syzkaller\x00', 0x0, 0x0, 0x0, 0x0, 0x0, '\x00', 0x0, 0x0, 0xffffffffffffffff, 0x8, &(0x7f0000000000), 0x0, 0x10, &(0x7f0000000000), 0x2ca}, 0x48) sendmsg(0xffffffffffffffff, 0x0, 0x0) bpf$BPF_GET_BTF_INFO(0xf, 0x0, 0x0) perf_event_open(&(0x7f0000000100)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3c43, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0xfffffffffffffffd, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}}, 0x0, 0x0, 0xffffffffffffffff, 0x0) bpf$BPF_PROG_TEST_RUN(0xa, &(0x7f0000000080)={r0, 0x18000000000002a0, 0x27, 0x303, &(0x7f0000000040)="b90103600000f000009e0ff080351fffffe10e003300633a77fbac141441e0002001be3e7d2a182fff", 0x0, 0x104, 0xa000000, 0x0, 0xfeb9, &(0x7f0000000640)="9209558f0c5fb25cd57f98113135c3171b8b331fbc04f0e6955a796ff8e3aae3cac46cec3030dfc999058aea01f0e6dcf2f9d480d328655aca003927bd50ed49d4843c8a0a2a4b26ceb747947200bd644c85e7a8a7d7cfce840c02a7d69c9e0bca410f64d43290abbbf3131e1fa8bd8c3e5f19d5a491d3d4c1a0fe47de9eebaf073ac3da6256bdb681d18fbd607c9b0d710442bcf78bc36fd3c035812bde582a262bff0e4d6181c818fccf542868c6e602d97bea23a101955dc76bcc984142ab305387aa348566d688edd291a3e9d08952adbdf60462bb7f7faebcdfccf17115708b0d73d0f3a469ce7d8374219b3f92c92bcec4958d474bb281c26691949d054b784a5866f081e53eb9cfd7", &(0x7f0000000100)}, 0x28) 19:43:33 executing program 5: r0 = openat$rfkill(0xffffffffffffff9c, &(0x7f0000000000), 0x2, 0x0) perf_event_open(&(0x7f000001d000)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x41c1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) write$rfkill(r0, &(0x7f0000000040)={0x0, 0x0, 0x3, 0x4}, 0x8) 19:43:33 executing program 2: perf_event_open(&(0x7f0000000200)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x41c1, 0x34482, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) r0 = socket$inet6(0xa, 0x400000000001, 0x0) r1 = socket$inet6_sctp(0xa, 0x801, 0x84) setsockopt$inet_sctp_SCTP_SOCKOPT_BINDX_ADD(r1, 0x84, 0x64, &(0x7f0000cf6fe4)=[@in6={0xa, 0x4e23, 0x0, @loopback}], 0x1c) r2 = dup3(r1, r0, 0x0) connect$inet6(r1, &(0x7f0000000080)={0xa, 0x4e23, 0x0, @loopback}, 0x1c) r3 = open(&(0x7f0000000040)='./bus\x00', 0x141042, 0x0) setsockopt$inet_sctp6_SCTP_DEFAULT_PRINFO(r2, 0x84, 0x72, &(0x7f0000001700)={0x0, 0x0, 0x30}, 0xc) ftruncate(r3, 0x600004) sendfile(r0, r3, 0x0, 0x80001d00c0d0) r4 = socket$inet6_sctp(0xa, 0x0, 0x84) getsockopt$inet_sctp6_SCTP_RECVRCVINFO(r4, 0x84, 0x20, 0x0, 0x0) socket$inet6_sctp(0xa, 0x10000000005, 0x84) socket$inet_sctp(0x2, 0x5, 0x84) getsockopt$inet_sctp6_SCTP_STREAM_SCHEDULER(0xffffffffffffffff, 0x84, 0x7b, &(0x7f0000000000)={0x0, 0x666}, 0x0) [ 379.306901] ieee802154 phy0 wpan0: encryption failed: -22 [ 379.312505] ieee802154 phy1 wpan1: encryption failed: -22 [ 394.663901] ip6_tunnel: ip6tnl1 xmit: Local address not yet configured! [ 440.743671] ieee802154 phy0 wpan0: encryption failed: -22 [ 440.749274] ieee802154 phy1 wpan1: encryption failed: -22 [ 502.176894] ieee802154 phy0 wpan0: encryption failed: -22 [ 502.182584] ieee802154 phy1 wpan1: encryption failed: -22