fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff", 0x20024, 0x1017e0}], 0x9000, &(0x7f0000000440)=ANY=[], 0xff) (async) syz_mount_image$btrfs(&(0x7f0000000000), &(0x7f0000000100)='./file0\x00', 0x1002004, 0x34, &(0x7f0000000200)=[{&(0x7f0000011000)="104fbd63c0999926236bf44047f1379f5959aec2a59a421dabe0ae8c1082507110728f386baa48ac8c080b0b5bf8fd9200501006000000000000000000000001feaf326c3b5d43588bde9e065a8b80a801000000000000000700000000000000", 0x60, 0x1b}, {&(0x7f0000010000)="4269f9651b2449e2208babf6b80cf5c198a19f0605eaa33ac85fa699fc6e960410728f386baa48ac8c080b0b5bf8fd92000001000000000001000000000000005f42485266535f4d07000000000000000000500000000000001010000000000000000000000000000000000000000000000000010000000000d0000000000000060000000000000001000000000000000010000000100000001000000010000061000000040000000000000000000000000000000000000000000000c5010000000000000200000000010000000000000000000001000000000000720000000000001000000010000000100000000000000000000000000000000000000000000000000000000000000000585c50b36999488499985426484d35a610728f386baa48ac8c080b0b5bf8fd9200"/320, 0x140, 0x10000}, {&(0x7f0000010200)='\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\a\x00\x00\x00\x00\x00\x00\x00\a\x00'/32, 0x20, 0x10220}, {&(0x7f0000010300)="00000000000000000000000001000000000000e4000010000000000000004000000000000200000000000000000001000000000002000000000000000010000000100000001000000100000001000000000000000000100000000000585c50b36999488499985426484d35a600"/128, 0x80, 0x10320}, {&(0x7f0000010400)="000000000000000000000000105000000000000500000000000000001010000000000004000000000000000020500000000000050000000000000000005000000000000400000000000000007050000000000004000000000000000080500000000000040000000000000000000001000000000080000000000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f050000000000006000000000000000010100000000000040000000000000000b0500000000000060000000000000000d050000000000006000000000000000000510000000000060000000000000000605000000000000600000000000000000000010000000000d0000000000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000005000000000000700000000000000001010000000000004000000000000000010500000000000070000000000000000d050000000000006000000000000000000510000000000060000000000000000605000000000000600000000000000000000010000000000d00000000000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000005050000000000004000000000000000010100000000000040000000000000000605000000000000400000000000000000050000000000004000000000000000070500000000000040000000000000000805000000000000400000000000000000000010000000000800000000000000100"/640, 0x280, 0x10b20}, {&(0x7f0000010700)="7c21e1a2b3acb2387469f4c3dcf17fb37ef5f4b2d7b0626c177f51bfe46138f910728f386baa48ac8c080b0b5bf8fd9200001000000000000100000000000001feaf326c3b5d43588bde9e065a8b80a80300000000000000030000000000000004000000000100000000000000d80100000000000000390f0000620000000001000000000000e40000100000000000e90e0000500000000001000000000000e40000500000000000990e0000500000000001000000000000e40000690000000000490e00005000"/224, 0xe0, 0x100000}, {&(0x7f0000010800)="000000000000000000000000000000001900000000000200000000000000000001000000000005000000000000000000010000000100001000000100010001000000000000000000690000000000585c50b36999488499985426484d35a600001900000000000200000000000000000001000000000005000000000000000000010000000100001000000100010001000000000000000000500000000000585c50b36999488499985426484d35a600004000000000000200000000000000000001000000000002000000000000000010000000100000001000000100000001000000000000000000100000000000585c50b36999488499985426484d35a6010000000000000000000001000000000000720000000000001000000010000000100000000000000000000000000000000000000000000000000000000000000000585c50b36999488499985426484d35a610728f386baa48ac8c080b0b5bf8fd924dc532c89abb41c152e349ee2eac294e36ecc460bf2160318d007ed1a365653f10728f386baa48ac8c080b0b5bf8fd9200101000000000000100000000000001feaf326c3b5d43588bde9e065a8b80a80400000000000000030000000000000004000000000100000000000000d80100000000000000390f0000620000000001000000000000e40000100000000000e90e0000500000000001000000000000e40000500000000000990e0000500000000001000000000000e40000690000000000490e00005000"/576, 0x240, 0x100ea0}, {&(0x7f0000010b00)="000000000000000000000000000000001900000000000200000000000000000001000000000005000000000000000000010000000100001000000100010001000000000000000000690000000000585c50b36999488499985426484d35a600001900000000000200000000000000000001000000000005000000000000000000010000000100001000000100010001000000000000000000500000000000585c50b36999488499985426484d35a600004000000000000200000000000000000001000000000002000000000000000010000000100000001000000100000001000000000000000000100000000000585c50b36999488499985426484d35a6010000000000000000000001000000000000720000000000001000000010000000100000000000000000000000000000000000000000000000000000000000000000585c50b36999488499985426484d35a610728f386baa48ac8c080b0b5bf8fd923d8ac58ea0f6e35ed4063af3f0abdad94a11909415d6327f7b91b83581781f0510728f386baa48ac8c080b0b5bf8fd9200201000000000000000000000000001feaf326c3b5d43588bde9e065a8b80a80100000000000000030000000000000002000000000100000000000000d80100000000000000390f0000620000000001000000000000e40000100000000000e90e00005000"/512, 0x200, 0x101ea0}, {&(0x7f0000010d00)="000000000000000000000000000000004000000000000200000000000000000001000000000002000000000000000010000000100000001000000100000001000000000000000000100000000000585c50b36999488499985426484d35a6010000000000000000000001000000000000400000000000001000000010000000100000000000000000000000000000000000000000000000000000000000000000585c50b36999488499985426484d35a610728f386baa48ac8c080b0b5bf8fd927195a377b9c35072f592f5bb13dd4d230b0330f666cab857813b5f592b4eb79310728f386baa48ac8c080b0b5bf8fd9200301000000000000000000000000001feaf326c3b5d43588bde9e065a8b80a80100000000000000040000000000000001000000000100000000000000cc00001000000000006b0f0000300000000000", 0x140, 0x102f40}, {&(0x7f0000000700)="0000000000000000000000000000000003000000000000000001000000000099a359ec53ca130000001000000000000000400000000000feaf326c3b5d43588bde9e065a8b80a8af4d4af667c2e613e90500000000000000088003ac010631cf4f99a6b8c8e5f210728f386baa48ac8c080b0b5bf8fd92004010000000000000000000000000d57c527af186be249f01feaf326c3b5d43588bde9e065a8b80a8010000000000000005000000000000005696cfc76c3dd4a1b28dc9e7c1e922ac764aa88f51cad055223ea89b841bfbe81fb1328ccc6e610cefdd08c05fc8ad005a4e4df19e1dd49b37ee4ad1a4c4edfa8a16d9298bae5f3bdc6484f4b6", 0xfd, 0x103fc0}, {&(0x7f0000011100)="745d8cc7f1a5b36daaf2177c6eaa7bec59aa10fbd605ab22905f87ef8ab7eb3a10728f386baa48ac8c080b0b5bf8fd9200601000000000000100000000000001feaf326c3b5d43588bde9e065a8b80a8020000000000000002000000000000000a000000000000100000000000c00000400000000000830f0000180000000040100000000000a900000000000000006b0f0000180000000040100000000000b005000000000000006b0f0000000000000050100000000000a90000000000000000530f0000180000000050100000000000b00700000000000000530f0000000000000060100000000000a90000000000000000320f0000210000000070100000000000a90000000000000000110f0000210000000080100000000000a90000000000000000f00e0000210000000000500000000000a90000000000000000cf0e0000210000000000500000000000c00000190000000000b70e0000180000000000500000000000c00000190000000000d80e0000180000000000500000000000c000001900000000000b0f0000180000000050100000000000b007000000000000000b0f0000000000000000500000000000c00000190000000000f30e000018", 0x1c0, 0x106000}, {&(0x7f0000011300)="00000000000000000000000000000000000000000000000000000000001000000000000000010000000000000500000000000000010000000000000002000000000000000200000000000000b00100000000000000010000000000000002000000000000000200000000000000b00300000000000000010000000000000002000000000000000200000000000000b00400000000000000010000000000000002000000000000000200000000000000b00200000000000000010000000000000001000000000000000200000000000000010000000000000001000000000000000200000000000000005000000000000000010000000000000200000000000000bea92f84cb2769e88c1bfb106ee6f3c9336ed334272e3c22f9b9172fbc48615e10728f386baa48ac8c080b0b5bf8fd9200701000000000000100000000000001feaf326c3b5d43588bde9e065a8b80a80200000000000000040000000000000002000000000100000000000000cc00001000000000006b0f0000300000000100000000000000cc00005000000000003b0f00003000"/416, 0x1a0, 0x106f00}, {&(0x7f0000011500)="0300000000000000000100000000000000005000000000000000190000000000feaf326c3b5d43588bde9e065a8b80a80300000000000000000100000000000000001000000000000000400000000000feaf326c3b5d43588bde9e065a8b80a80f0dcb27620f93c61dfe5735ec4f4b9cc12cfe480144337afd5faf3a3e5bc53810728f386baa48ac8c080b0b5bf8fd9200801000000000000100000000000001feaf326c3b5d43588bde9e065a8b80a80200000000000000030000000000000003000000000100000000000000d80100000000000000390f0000620000000001000000000000e40000100000000000e90e0000500000000001000000000000e40000500000000000990e00005000"/288, 0x120, 0x107fa0}, {&(0x7f0000011700)="1900000000000200000000000000000001000000000005000000000000000000010000000100001000000100010001000000000000000000500000000000585c50b36999488499985426484d35a600004000000000000200000000000000000001000000000002000000000000000010000000100000001000000100000001000000000000000000100000000000585c50b36999488499985426484d35a6010000000000000000000001000000000000590000000000001000000010000000100000000000000000000000000000000000000000000000000000000000000000585c50b36999488499985426484d35a610728f386baa48ac8c080b0b5bf8fd92", 0x100, 0x108efc}, {&(0x7f0000011800)="6db2faa7ed3470e70331f743dcf6d021ccf4b1ad818cc8f48cff050358d9ec8010728f386baa48ac8c080b0b5bf8fd9200005000000000000100000000000001feaf326c3b5d43588bde9e065a8b80a8070000000000000001000000000000000a000000000200000000000000840000000000000000e40d0000b701000004000000000000008400000000000000002d0c0000b701000005000000000000000c06000000000000001c0c0000110000000500000000000000840000000000000000650a0000b70100000600000000000000010000000000000000c5090000a000000006000000000000000c0600000000000000b90900000c000000060000000000000054d2c2bf8d0000000094090000250000000700000000000000840000000000000000dd070000b7010000090000000000000084000000000000000026060000b7010000f7ffffffffffffff8400000000000000006f040000b701000000", 0x160, 0x500000}, {&(0x7f0000011a00)="0000000000000000000000000000000000000000040000000000000000010000000000000090500000000000000000000000000000100000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000400"/128, 0x80, 0x500560}, {&(0x7f0000011b00)="00000000000000000000000400000000000000000000000000000000a050000000000000000000000000000010000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000040000000000", 0x60, 0x500720}, {&(0x7f0000011c00)="000001000000000000000000000000000000030000000000000000100000000000000000000000000000010000000000000000000000ed410000000000000000", 0x40, 0x500840}, {&(0x7f0000011d00)="0000060000000000000000000000000000000060500000000000000000000000000000100000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000600"/96, 0x60, 0x5008e0}, {&(0x7f0000011e00)="00000000000000000000000000000000000000000000000000050000000000000084ffffffffffffffff0000000000000000000007000264656661756c74000000000000000002002e2e03000000000000000000000000000000000000000000000000100000000000000000000000000000010000000000000000000000ed41000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005cbc645f00000000000000005cbc645f00000000000000005cbc645f00000000000000005cbc645f000000000000000001000000000000000000000000000000030000000000000000100000000000000000000000000000010000000000000000000000ed410000000000000000000000000080ffffffff00"/320, 0x140, 0x5009e0}, {&(0x7f0000012000)="000000000000000000000600000000000000000100000000000000d050000000000000000000000000000030000000000000000000000000000000000000000000000100000000000000000000000000000000000000000001060000000000000082f6dc9922aa4f6499776c038d92ced8000000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000005dbc645f0000000020f1a80e5cbc645f00"/224, 0xe0, 0x500b60}, {&(0x7f0000012100)="000000000000000000070064656661756c7401000000000000000000000000000000030000000000000000100000000000000000000000000000010000000000000000000000ed4100"/96, 0x60, 0x500c80}, {&(0x7f0000012200)="000000000000000000000000000000000000060000000000000000000000000000000000510000000000000000000000000000100000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000600"/128, 0x80, 0x500d20}, {&(0x7f0000012300)="00000000000000000001000000000000000000000000000000030000000000000000100000000000000000000000000000010000000000000000000000ed4100", 0x40, 0x500e40}, {&(0x7f0000012400)="000000000000000000070000000000000000000000000000000010500000000000000000000000000000100000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000700000000000000", 0x60, 0x500ee0}, {&(0x7f0000012500)="48e59d4e802972949d6943f6ad6cc5d5bebea09a024ae5af0c5617fe0871c5ec10728f386baa48ac8c080b0b5bf8fd9200105000000000000100000000000001feaf326c3b5d43588bde9e065a8b80a8070000000000000002000000000000000e000000000000100000000000c00000400000000000830f0000180000000010100000000000a90000000000000000620f0000210000000000500000000000a90000000000000000410f0000210000000000500000000000c00000190000000000290f0000180000000010500000000000a90000000000000000080f0000210000000030500000000000a80030000000000000d30e0000350000000060500000000000a90000000000000000b20e0000210000000090500000000000a90000000000000000910e00002100000000a0500000000000a90000000000000000700e00002100000000c0500000000000a900000000000000004f0e00002100000000d0500000000000a901000000000000002e0e00002100000000e0500000000000a900000000000000000d0e0000210000000000510000000000a90000000000000000ec0d0000210000000000690000000000c00000190000000000d40d000018", 0x1c0, 0x501000}, {&(0x7f0000012700)="0000010000000000000500000000000000010000000000000006000000000000000200000000000000b00400000000000000010000000000000006000000000000000200000000000000b00500000000000000010000000000000006000000000000000200000000000000b00500000000000000010000000000000006000000000000000200000000000000b00500000000000000010000000000000004000000000000000200000000000000b00900000000000000010000000000000004000000000000000200000000000000b0f7ffffffffffffff010000000000000006000000000000000200000000000000b00700000000000000010000000000000006000000000000000100000000000000b205000000000000000501000000000000000000000000000001000000010000000000000007000000000000000200000000000000b0020000000000000000c000000000000000010000000000000500000000000000010000000000000007000000000000000200000000000000b00100000000000000010000000000000004000000000000000200000000000000b003000000000000000010000000000000000100000000000002000000000000005899519175eec0d0f4e97e7b684d27bb7b8d9ea6c09b008f532f3648af7aeef410728f386baa48ac8c080b0b5bf8fd9200205000000000000100000000000001feaf326c3b5d43588bde9e065a8b80a8050000000000000002000000000000000b000000000000100000000000c00000400000000000830f0000180000000010100000000000a90000000000000000620f0000210000000000500000000000a90000000000000000410f0000210000000000500000000000c00000190000000000290f0000180000000010500000000000a90000000000000000080f0000210000000020500000000000a90000000000000000e70e0000210000000070500000000000a90000000000000000c60e0000210000000080500000000000a90000000000000000a50e0000210000000090500000000000a90000000000000000840e00002100000000a0500000000000a90000000000000000630e0000210000000000690000000000c000001900000000004b0e0000180000000000690000000000c000001900000000004b0e0000180000000000690000000000c000001900000000002a0e0000180000000000500000000000c00000190000000000f30e000018", 0x380, 0x501e40}, {&(0x7f0000012b00)="0000000000000000000000000000000000000000000000010000000000000500000000000000010000000000000004000000000000000000010000000000000500000000000000010000000000000004000000000000000000010000000000000500000000000000010000000000000004000000000000000200000000000000b00900000000000000010000000000000004000000000000000200000000000000b0f7ffffffffffffff010000000000000004000000000000000200000000000000b00700000000000000010000000000000004000000000000000200000000000000b00400000000000000010000000000000005000000000000000200000000000000b00200000000000000010000000000000005000000000000000200000000000000b00100000000000000007000000000000000010000000000000500000000000000010000000000000004000000000000000200000000000000b00500000000000000010000000000000004000000000000000200000000000000b00300000000000000001000000000000000010000000000000200000000000000", 0x1a0, 0x502e60}, {&(0x7f0000012d00)="d1fd288d6da93056690fba437a87a8abd55a920718151512a0d0ccbba390f00d10728f386baa48ac8c080b0b5bf8fd9200605000000000000100000000000001feaf326c3b5d43588bde9e065a8b80a8060000000000000007000000000000000100000000f6ffffffffffffff8000305000000000003b0f0000600000000000", 0x80, 0x506000}, {&(0x7f0000012e00)="ad7facb2586fc6e966c004d7d1d16b024f5805ff7cb47c7a85dabd8b48892ca7ad7facb2586fc6e966c004d7d1d16b024f5805ff7cb47c7a85dabd8b48892ca7ad7facb2586fc6e966c004d7d1d16b024f5805ff7cb47c7a85dabd8b48892ca7447913ef673394db702dace49efbaf08f155b88408e5eedcac138974200e844c10728f386baa48ac8c080b0b5bf8fd9200705000000000000100000000000001feaf326c3b5d43588bde9e065a8b80a80400000000000000040000000000000003000000000100000000000000cc00001000000000006b0f0000300000000100000000000000cc00005000000000003b0f0000300000000100000000000000cc00006900000000000b0f00003000"/288, 0x120, 0x506fa0}, {&(0x7f0000013000)="000000000000000000000000000000000300000000000000000100000000000000006900000000000000190000000000feaf326c3b5d43588bde9e065a8b80a80300000000000000000100000000000000005000000000000000190000000000feaf326c3b5d43588bde9e065a8b80a80300000000000000000100000000000000001000000000000000400000000000feaf326c3b5d43588bde9e065a8b80a8d68671688d9029647c79ad4bf42be1306aa04a2b987e62d18f3af37be47a39ac10728f386baa48ac8c080b0b5bf8fd9200805000000000000100000000000001feaf326c3b5d43588bde9e065a8b80a804000000000000000700000000000000", 0x100, 0x507f60}, {&(0x7f0000013100)="280446fba903676714a199208da7bbbcc64014cf0f8da172f7c43601835a1b5c10728f386baa48ac8c080b0b5bf8fd9200905000000000000100000000000001feaf326c3b5d43588bde9e065a8b80a80400000000000000f7ffffffffffffff02000000000001000000000000010000000000000000fb0e0000a000000000010000000000000c0001000000000000ef0e00000c00"/160, 0xa0, 0x509000}, {&(0x7f0000013200)="0000000000000000000000000000000000000000000000000000000002002e2e04000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000ed41000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005cbc645f00000000000000005cbc645f00000000000000005cbc645f00000000000000000000000000000000000000007e341445892f598b6f54607c802b8c8830d38fb814020f173e9c2a07cfb297f110728f386baa48ac8c080b0b5bf8fd9200a05000000000000100000000000001feaf326c3b5d43588bde9e065a8b80a804000000000000000900000000000000010000000082f6dc9922aa4f64fb99776c038d92ced8930f0000080000000000", 0x140, 0x509f40}, {&(0x7f0000013400)="00000000000000000000000000000000000000000000000005000000000000003dc675ab2d33d4fe834e8ea2be9e258bce44eeea134d888431f4962e5ac71a7d10728f386baa48ac8c080b0b5bf8fd9200b05000000000000100000000000001feaf326c3b5d43588bde9e065a8b80a8060000000000000002000000000000000e000000000000100000000000c00000400000000000830f0000180000000010100000000000a90000000000000000620f0000210000000000500000000000c000001900000000004a0f0000180000000030500000000000a80030000000000000150f0000350000000060500000000000a90000000000000000f40e0000210000000090500000000000a90000000000000000d30e00002100000000a0500000000000a90000000000000000b20e00002100000000b0500000000000a90000000000000000910e00002100000000c0500000000000a90000000000000000700e00002100000000d0500000000000a901000000000000004f0e00002100000000e0500000000000a900000000000000002e0e00002100000000f0500000000000a900000000000000000d0e0000210000000000510000000000a90000000000000000ec0d0000210000000000690000000000c00000190000000000d40d000018", 0x1e0, 0x50afe0}, {&(0x7f0000013600)="0000010000000000000500000000000000010000000000000006000000000000000200000000000000b00400000000000000010000000000000006000000000000000200000000000000b00100000000000000010000000000000006000000000000000200000000000000b00500000000000000010000000000000006000000000000000200000000000000b00500000000000000010000000000000006000000000000000200000000000000b00500000000000000010000000000000006000000000000000200000000000000b00200000000000000010000000000000004000000000000000200000000000000b00900000000000000010000000000000004000000000000000200000000000000b0f7ffffffffffffff010000000000000006000000000000000200000000000000b00700000000000000010000000000000006000000000000000100000000000000b20500000000000000050100000000000000000000000000000100000000c000000000000000010000000000000500000000000000010000000000000004000000000000000200000000000000b00300000000000000001000000000000000010000000000000200000000000000291bbaf3ff2ffec36c3d0dee0f69a12c2e2d9e73fd02651c62cab08b7e32a08c10728f386baa48ac8c080b0b5bf8fd9200c05000000000000100000000000001feaf326c3b5d43588bde9e065a8b80a80600000000000000050000000000000012000000000001000000000000010000000000000000fb0e0000a000000000010000000000000c0001000000000000ef0e00000c0000000001000000000000544bae790400000000cc0e0000230000000001000000000000546b826b1100000000a50e000027000000000100000000000054bf5d291700000000820e000023000000000100000000000054bcde42e5000000005f0e000023000000000100000000000054482d12f6000000003c0e0000230000000001000000000000600200000000000000190e0000230000000001000000000000600300000000000000f60d0000230000000001000000000000600400000000000000d30d0000230000000001000000000000600500000000000000b00d0000230000000001000000000000600600000000000000890d0000270000000101000000000000010000000000000000e90c0000a000000001010000000000000c0001000000000000da0c00000f0000000101000000000000544bae790400000000b70c000023000000010100000000000054482d12f600000000940c0000230000000101000000000000600200000000000000710c00002300000001010000000000006003000000000000004e0c00002300"/1024, 0x400, 0x50be40}, {&(0x7f0000013a00)="0000000000000000000000000000000000000003010000000000000100000000000000000600000000000000000005000766696c653102010000000000000100000000000000000600000000000000000005000166696c653003010000000000000100000000000000000600000000000000000005000766696c653102010000000000000100000000000000000600000000000000000005000166696c65300200000000000000050066696c653006000000000000000600000000000000140000000000000000000000000000000000000000000000010000000000000000000000ed41000000000000000000000000000000000000080000000000000000000000000000000000000000000000000000000000000000000000000000005dbc645f00000000cab5280d5dbc645f00000000cab5280d5dbc645f00000000cab5280d5dbc645f00000000cab5280d06010000000000000100000000000000000600000000000000000009000166696c652e636f6c6405010000000000000100000000000000000600000000000000000005000166696c653305010000000000000100000000000000000600000000000000000005000166696c653204010000000000000100000000000000000600000000000000000005000166696c653101010000000000000100000000000000000600000000000000000005000266696c653004010000000000000100000000000000000600000000000000000005000166696c653105010000000000000100000000000000000600000000000000000005000166696c653205010000000000000100000000000000000600000000000000000005000166696c653306010000000000000100000000000000000600000000000000000009000166696c652e636f6c6401010000000000000100000000000000000600000000000000000005000266696c6530000000000000000002002e2e030000000000000006000000000000003a0000000000000000100000000000000000000000000000010000000000000000000000ed41000000000000000000000000000000000000050000000000000000000000000000000000000000000000000000000000000000000000000000005cbc645f00000000000000005dbc645f00000000e6be650d5dbc645f00000000e6be650d5cbc645f00000000000000000654f9895dbe2f86073d7756fcf442ec664accfa8c145419b062e95f09f6416c10728f386baa48ac8c080b0b5bf8fd9200d05000000000000100000000000001feaf326c3b5d43588bde9e065a8b80a8060000000000000005000000000000000200000001000100000000000001000000000000000000c05000000000000600000000000000020100000000000001000000000000000000e050000000000006", 0x400, 0x50cca0}, {&(0x7f0000013e00)="04a1ef51571117a553e54f9a86db65f23a8e709055e86c535f82b3795648ed2b10728f386baa48ac8c080b0b5bf8fd9200e05000000000000100000000000001feaf326c3b5d43588bde9e065a8b80a80600000000000000050000000000000011000000000201000000000000010000000000000000fb0e0000a000000002010000000000000c0101000000000000ec0e00000f00000002010000000000006c0000000000000000bd0a00002f04000003010000000000000100000000000000001d0a0000a000000003010000000000000c01010000000000000e0a00000f00000003010000000000006c0000000000000000d30900003b000000040100000000000001000000000000000033090000a000000004010000000000000c0001000000000000240900000f00000004010000000000001822a8f12600000000f50800002f000000040100000000000018d65ba13500000000c60800002f00000004010000000000006c0000000000000000a70800001f000000050100000000000001000000000000000007080000a000000005010000000000000c0001000000000000e90700001e00000005010000000000006c0000000000000000b407000035000000060100000000000001000000000000000014070000a000000006010000000000000c0001000000000000010700001300000006010000000000006c0000000000000000880600007900"/544, 0x220, 0x50e000}, {&(0x7f0000014100)="0000000000000000000000000006000000000000006400000000000000000000000073797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c6572730600000000000000090066696c652e636f6c6406000000000000000600000000000000640000000000000064000000000000000000000000000000010000000000000000000000ed81000000000000000000000000000000000000050000000000000000000000000000000000000000000000000000000000000000000000000000005dbc645f00000000e6be650d5dbc645f00000000e6be650d5dbc645f00000000e6be650d5dbc645f00000000e6be650d06000000000000000030000000000000000000000100305000000000000030000000000000000000000000000000300000000000000400000000000000050066696c65320500000000000000050066696c653306000000000000000600000000000000282300000000000000300000000000000000000000000000020000000000000000000000ed81000000000000000000000000000000000000050000000000000000000000000000000000000000000000000000000000000000000000000000005dbc645f00000000e6be650d5dbc645f00000000e6be650d5dbc645f00000000e6be650d5dbc645f00000000e6be650d06000000000000000a00000000000000000000000073797a6b616c6c6572730000000000000000000000000000000000060000000000000006000b0008757365722e7861747472317861747472310000000000000000000000000000000000060000000000000006000b0008757365722e7861747472327861747472320300000000000000050066696c6531060000000000000006000000000000000a000000000000000a000000000000000000000000000000010000000000000000000000ed81000000000000000000000000000000000000080000000000000000000000000000000000000000000000000000000000000000000000000000005dbc645f00000000cab5280d5dbc645f00000000e6be650d5dbc645f00000000e6be650d5dbc645f00000000cab5280d0600000000000000260000000000000000000000002f746d702f73797a2d696d61676567656e3537303930383734312f66696c65302f66696c65300300000000000000050066696c653106000000000000000600000000000000260000000000000026000000000000000000000000000000010000000000000000000000ffa1000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000000000000000000005dbc645f00000000cab5280d5dbc645f00000000cab5280d5dbc645f00000000cab5280d5dbc645f00000000cab5280d06000000000000001a04000000000000000000000073797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c0200000000000000050066696c6530060000000000000006000000000000001a040000000000001a040000000000000000000000000000010000000000000000000000ed81000000000000000000000000000000000000080000000000000000000000000000000000000000000000000000000000000000000000000000005dbc645f00000000cab5280d5dbc645f00000000cab5280d5dbc645f00000000cab5280d5dbc645f00000000cab5280d9a9fc89e99236eec346f6d2afc04843693b23119aed4f7c59071ba7e49c5092e10728f386baa48ac8c080b0b5bf8fd9200f05000000000000100000000000001feaf326c3b5d43588bde9e065a8b80a8060000000000000001000000000000000a000000000200000000000000840000000000000000e40d0000b701000004000000000000008400000000000000002d0c0000b701000005000000000000000c06000000000000001c0c0000110000000500000000000000840000000000000000650a0000b70100000600000000000000010000000000000000c5090000a000000006000000000000000c0600000000000000b90900000c000000060000000000000054d2c2bf8d0000000094090000250000000700000000000000840000000000000000dd070000b7010000090000000000000084000000000000000026060000b7010000f7ffffffffffffff8400000000000000006f040000b701000000", 0xa80, 0x50e6e0}, {&(0x7f0000014c00)="0000000000000000000000000000000000000000040000000000000000010000000000000090500000000000000000000000000000100000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000400"/128, 0x80, 0x50f560}, {&(0x7f0000014d00)="00000000000000000000000400000000000000000000000000000000a050000000000000000000000000000010000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000040000000000", 0x60, 0x50f720}, {&(0x7f0000014e00)="000001000000000000000000000000000000030000000000000000100000000000000000000000000000010000000000000000000000ed410000000000000000", 0x40, 0x50f840}, {&(0x7f0000014f00)="0000060000000000000000000000000000000060500000000000000000000000000000100000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000600"/96, 0x60, 0x50f8e0}, {&(0x7f0000015000)="00000000000000000000000000000000000000000000000000050000000000000084ffffffffffffffff0000000000000000000007000264656661756c74000000000000000002002e2e03000000000000000000000000000000000000000000000000100000000000000000000000000000010000000000000000000000ed41000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005cbc645f00000000000000005cbc645f00000000000000005cbc645f00000000000000005cbc645f000000000000000001000000000000000000000000000000030000000000000000100000000000000000000000000000010000000000000000000000ed410000000000000000000000000080ffffffff00"/320, 0x140, 0x50f9e0}, {&(0x7f0000015200)="000000000000000000000600000000000000000100000000000000d050000000000000000000000000000030000000000000000000000000000000000000000000000100000000000000000000000000000000000000000001060000000000000082f6dc9922aa4f6499776c038d92ced8000000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000005dbc645f0000000020f1a80e5cbc645f00"/224, 0xe0, 0x50fb60}, {&(0x7f0000015300)="000000000000000000070064656661756c7401000000000000000000000000000000030000000000000000100000000000000000000000000000010000000000000000000000ed4100"/96, 0x60, 0x50fc80}, {&(0x7f0000015400)="000000000000000000000000000000000000060000000000000000000000000000000000510000000000000000000000000000100000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000600"/128, 0x80, 0x50fd20}, {&(0x7f0000015500)="00000000000000000001000000000000000000000000000000030000000000000000100000000000000000000000000000010000000000000000000000ed4100", 0x40, 0x50fe40}, {&(0x7f0000000080)="0000000000000000000600000000000000000000000000000000b05000000000000000000000000000001000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000006000000000fddd23eb25bd83b9be5ad6a0000", 0x6b, 0x50fee0}, {&(0x7f0000015700)="abbf70913dd77404e1610f7ce2992624cd942ced68b392f6892c965f400ef26410728f386baa48ac8c080b0b5bf8fd9200005100000000000100000000000001feaf326c3b5d43588bde9e065a8b80a80600000000000000040000000000000004000000000000000000000000f90100000000000000730f0000280000000100000000000000cc0000100000000000430f0000300000000100000000000000cc0000500000000000130f0000300000000100000000000000cc0000690000000000e30e00003000"/224, 0xe0, 0x510000}, {&(0x7f0000015800)="00000000000000000300000000000000000100000000000000006900000000000000190000000000feaf326c3b5d43588bde9e065a8b80a80300000000000000000100000000000000005000000000000000190000000000feaf326c3b5d43588bde9e065a8b80a80300000000000000000100000000000000001000000000000000400000000000feaf326c3b5d43588bde9e065a8b80a80000000000000000", 0xa0, 0x510f40}, {&(0x7f0000015900)="a65d691095e02ca7c1d0843d021082f7c71fbc88a7499a6e72264990ef73a8ee10728f386baa48ac8c080b0b5bf8fd9200006900000000000100000000000001feaf326c3b5d43588bde9e065a8b80a8060000000000000005000000000000001c000000000001000000000000010000000000000000fb0e0000a000000000010000000000000c0001000000000000ef0e00000c0000000001000000000000544bae790400000000cc0e0000230000000001000000000000546b826b1100000000a50e000027000000000100000000000054bf5d291700000000820e000023000000000100000000000054bcde42e5000000005f0e000023000000000100000000000054482d12f6000000003c0e00002300000001010000000000000100000000000000009c0d0000a000000001010000000000000c00010000000000008d0d00000f0000000101000000000000544bae7904000000006a0d000023000000010100000000000054482d12f600000000470d0000230000000201000000000000010000000000000000a70c0000a000000002010000000000000c0101000000000000980c00000f00000002010000000000006c0000000000000000690800002f0400000301000000000000010000000000000000c9070000a000000003010000000000000c0101000000000000ba0700000f00000003010000000000006c00000000000000007f0700003b0000000401000000000000010000000000000000df060000a000000004010000000000000c0001000000000000d00600000f00000004010000000000001822a8f12600000000a10600002f000000040100000000000018d65ba13500000000720600002f00000004010000000000006c0000000000000000530600001f0000000501000000000000010000000000000000b3050000a000000005010000000000000c0001000000000000950500001e00000005010000000000006c000000000000000060050000350000000601000000000000010000000000000000c0040000a000000006010000000000000c0001000000000000ad0400001300000006010000000000006c000000000000000034040000790000", 0x320, 0x690000}, {&(0x7f0000015d00)="0000000000000000000000000000000000000000000000000006000000000000006400000000000000000000000073797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c6572730600000000000000090066696c652e636f6c6406000000000000000600000000000000000000000000000000000000000000000000000000000000010000000000000000000000ff81000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000000000000000000005dbc645f00000000e6be650d5dbc645f00000000e6be650d5dbc645f00000000e6be650d5dbc645f00000000e6be650d06000000000000000030000000000000000000000100305000000000000030000000000000000000000000000000300000000000000400000000000000050066696c65320500000000000000050066696c653306000000000000000600000000000000000000000000000000000000000000000000000000000000010000000000000000000000ff81000000000000000000000000000000000000030000000000000000000000000000000000000000000000000000000000000000000000000000005dbc645f00000000e6be650d5dbc645f00000000e6be650d5dbc645f00000000e6be650d5dbc645f00000000e6be650d06000000000000000a00000000000000000000000073797a6b616c6c6572730000000000000000000000000000000000060000000000000006000b0008757365722e7861747472317861747472310000000000000000000000000000000000060000000000000006000b0008757365722e7861747472327861747472320300000000000000050066696c653106000000000000000600000000000000000000000000000000000000000000000000000000000000010000000000000000000000ff81000000000000000000000000000000000000050000000000000000000000000000000000000000000000000000000000000000000000000000005dbc645f00000000cab5280d5dbc645f00000000cab5280d5dbc645f00000000cab5280d5dbc645f00000000cab5280d0600000000000000260000000000000000000000002f746d702f73797a2d696d61676567656e3537303930383734312f66696c65302f66696c65300300000000000000050066696c653106000000000000000600000000000000000000000000000000000000000000000000000000000000010000000000000000000000ffa1000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000000000000000000005dbc645f00000000cab5280d5dbc645f00000000cab5280d5dbc645f00000000cab5280d5dbc645f00000000cab5280d06000000000000001a04000000000000000000000073797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c0200000000000000050066696c653006000000000000000600000000000000000000000000000000000000000000000000000000000000010000000000000000000000ff81000000000000000000000000000000000000070000000000000000000000000000000000000000000000000000000000000000000000000000005dbc645f00000000cab5280d5dbc645f00000000cab5280d5dbc645f00000000cab5280d5dbc645f00000000cab5280d03010000000000000100000000000000000600000000000000000005000766696c653102010000000000000100000000000000000600000000000000000005000166696c65300200000000000000050066696c653006000000000000000600000000000000000000000000000000000000000000000000000000000000010000000000000000000000ff41000000000000000000000000000000000000060000000000000000000000000000000000000000000000000000000000000000000000000000005dbc645f00000000cab5280d5dbc645f00000000cab5280d5dbc645f00000000cab5280d5dbc645f00000000cab5280d04010000000000000100000000000000000600000000000000000005000166696c653105010000000000000100000000000000000600000000000000000005000166696c653205010000000000000100000000000000000600000000000000000005000166696c653306010000000000000100000000000000000600000000000000000009000166696c652e636f6c6401010000000000000100000000000000000600000000000000000005000266696c6530000000000000000002002e2e03000000000000000000000000000000000000000000000000100000000000000000000000000000010000000000000000000000ed41000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005cbc645f00000000000000005cbc645f00000000000000005cbc645f00000000000000005cbc645f0000000000000000", 0xb80, 0x690480}], 0x0, &(0x7f00000001c0)=ANY=[@ANYBLOB="6e2f73706163655f632f8744debb44"], 0x0) (async) r2 = syz_open_procfs(0xffffffffffffffff, &(0x7f0000001100)='fdinfo/4\x00') ioctl$VIDIOC_ENUMAUDOUT(r1, 0xc0345642, &(0x7f0000000a40)={0xf293, "72f75d591adfab2c502471b267d2f31107c8a03e8fc58301e6eff38dd38f2588", 0x2}) (async) pread64(r2, &(0x7f0000002140)=""/17, 0x11, 0x0) 00:02:59 executing program 4: prlimit64(0x0, 0xe, &(0x7f0000000140)={0x8, 0x8b}, 0x0) sched_setscheduler(0x0, 0x2, &(0x7f0000000080)=0x6) sched_setaffinity(0x0, 0x8, &(0x7f00000000c0)=0x5) r0 = getpid() sched_setscheduler(r0, 0x1, &(0x7f0000001700)=0x4) ptrace$PTRACE_SECCOMP_GET_FILTER(0x420c, 0x0, 0xfffffffffffffffc, &(0x7f0000000100)=""/36) socketpair$unix(0x1, 0x2, 0x0, &(0x7f0000000200)={0xffffffffffffffff, 0xffffffffffffffff}) getrlimit(0x8, 0x0) getpid() getrlimit(0xb, &(0x7f00000001c0)) connect$unix(r1, &(0x7f000057eff8)=@abs, 0x6e) sendmmsg$unix(r2, &(0x7f00000bd000), 0x318, 0x0) recvmmsg(r1, &(0x7f00000000c0), 0x10106, 0x2, 0x0) sched_setattr(0x0, &(0x7f0000000040)={0x38}, 0x0) syz_clone3(&(0x7f0000000a00)={0x40b86000, 0x0, 0x0, 0x0, {}, 0x0, 0x0, 0x0, 0x0}, 0x58) bpf$BPF_RAW_TRACEPOINT_OPEN(0x11, &(0x7f0000000080)={&(0x7f0000000640)='tegra_dma_isr\x00'}, 0x10) bpf$MAP_CREATE(0x100000000000000, &(0x7f0000000140)=@base={0xa, 0x16, 0x8, 0x7f}, 0x48) bpf$BPF_PROG_RAW_TRACEPOINT_LOAD(0x5, &(0x7f0000000440)={0x5, 0xa, &(0x7f0000000340)=ANY=[@ANYRES64=r1, @ANYRES8, @ANYRES16=r0], &(0x7f0000000000)='GPL\x00', 0x4, 0xfe, &(0x7f0000000240)=""/254, 0x40f00, 0x0, '\x00', 0x0, 0x0, 0xffffffffffffffff, 0x8, 0x0, 0xffffffffffffffa5, 0x10, 0x0}, 0x80) signalfd4(r2, 0x0, 0x0, 0x0) bpf$MAP_CREATE(0x0, &(0x7f0000000000)=@base={0x6, 0x4, 0x7fff, 0x13f, 0x0, 0x1}, 0x48) prlimit64(0x0, 0xe, &(0x7f0000000140)={0x8, 0x8b}, 0x0) (async) sched_setscheduler(0x0, 0x2, &(0x7f0000000080)=0x6) (async) sched_setaffinity(0x0, 0x8, &(0x7f00000000c0)=0x5) (async) getpid() (async) sched_setscheduler(r0, 0x1, &(0x7f0000001700)=0x4) (async) ptrace$PTRACE_SECCOMP_GET_FILTER(0x420c, 0x0, 0xfffffffffffffffc, &(0x7f0000000100)=""/36) (async) socketpair$unix(0x1, 0x2, 0x0, &(0x7f0000000200)) (async) getrlimit(0x8, 0x0) (async) getpid() (async) getrlimit(0xb, &(0x7f00000001c0)) (async) connect$unix(r1, &(0x7f000057eff8)=@abs, 0x6e) (async) sendmmsg$unix(r2, &(0x7f00000bd000), 0x318, 0x0) (async) recvmmsg(r1, &(0x7f00000000c0), 0x10106, 0x2, 0x0) (async) sched_setattr(0x0, &(0x7f0000000040)={0x38}, 0x0) (async) syz_clone3(&(0x7f0000000a00)={0x40b86000, 0x0, 0x0, 0x0, {}, 0x0, 0x0, 0x0, 0x0}, 0x58) (async) bpf$BPF_RAW_TRACEPOINT_OPEN(0x11, &(0x7f0000000080)={&(0x7f0000000640)='tegra_dma_isr\x00'}, 0x10) (async) bpf$MAP_CREATE(0x100000000000000, &(0x7f0000000140)=@base={0xa, 0x16, 0x8, 0x7f}, 0x48) (async) bpf$BPF_PROG_RAW_TRACEPOINT_LOAD(0x5, &(0x7f0000000440)={0x5, 0xa, &(0x7f0000000340)=ANY=[@ANYRES64=r1, @ANYRES8, @ANYRES16=r0], &(0x7f0000000000)='GPL\x00', 0x4, 0xfe, &(0x7f0000000240)=""/254, 0x40f00, 0x0, '\x00', 0x0, 0x0, 0xffffffffffffffff, 0x8, 0x0, 0xffffffffffffffa5, 0x10, 0x0}, 0x80) (async) signalfd4(r2, 0x0, 0x0, 0x0) (async) bpf$MAP_CREATE(0x0, &(0x7f0000000000)=@base={0x6, 0x4, 0x7fff, 0x13f, 0x0, 0x1}, 0x48) (async) 00:02:59 executing program 0: prctl$PR_SET_TAGGED_ADDR_CTRL(0x37, 0x1) r0 = add_key(&(0x7f0000000000)='id_resolver\x00', &(0x7f0000000080)={'syz', 0x0}, &(0x7f0000000140)="6704eb4ea642f7f86f37f15017fc00b1b770d3d2bbedd5b38b1b1831516652f7890ba5f3153b5bdd9049e24b17b504cb915671b4264d6e1c61215f7dd6c6983398bbea3fa7601e2461c8a6d1230c1067c04b67e11a830d05c012328d07152f1bd9196ad80900e02f42b27b4e32a39b8f69ba4b535a1135b549615120af08c58db56777b048e062bb5d19db6045b33535a06f46f348bc79f15f7e73e68b53d8138a1ba9f20f7fa7db4612f920127777950fcf23531db036ee12056213fcaf149f50a14ad93f46a449b26d111a0eb48af300a2b60f247e52dd55b7cb4f49d53ee2b1c2530cb8797d4cb8f11750bfb2092e32557d896712e49399c8edcff7e4d6a0733a103528c7f1c22d4e0e3dda4fb4c90d0cd68c75423255917ec213f8f1823e5820a0aefdb1177ed2eca3946323b9527a6617f5d4c57572c17c7aa00ba70370897fae15e8bb004c4b16837035cc4587102e56c74d9d73fd8546ec45ad64e4567009179c1edbf426f86ff0e03ca39174a65a2ad00eea93b727e8577af2f5b12a94b07d148a0dd19a08200643798bc5eab66586a6c8a25b07c5a24b439073bf789c955972929a21bfc45f8ce9f12325489408e7d3c1fffd43741e5fed41fa301f9aec36d995a9087aa05c9b635d571b9322fcf178ed4d63ac7ec7ae47572db9472185c21609d3104406ff946535da1cf08bd7e9413ba85e1ee966eb519dc59a4a95d911481a830c48512cce77bcafd7e07ab5e2d3fa81c77a0372444fdf792e80fcd375ba8530e2d255542151656e85ea39bfc257207f3beba4e0b80e7ef07d1ec78e660570c7302900feaa14e57c73eef42c85aa", 0x254, 0xffffffffffffffff) keyctl$read(0x2, r0, &(0x7f0000004e80)=""/4088, 0xff8) socket$inet6_sctp(0xa, 0x1, 0x84) prctl$PR_SET_TAGGED_ADDR_CTRL(0x37, 0x1) (async) add_key(&(0x7f0000000000)='id_resolver\x00', &(0x7f0000000080)={'syz', 0x0}, &(0x7f0000000140)="6704eb4ea642f7f86f37f15017fc00b1b770d3d2bbedd5b38b1b1831516652f7890ba5f3153b5bdd9049e24b17b504cb915671b4264d6e1c61215f7dd6c6983398bbea3fa7601e2461c8a6d1230c1067c04b67e11a830d05c012328d07152f1bd9196ad80900e02f42b27b4e32a39b8f69ba4b535a1135b549615120af08c58db56777b048e062bb5d19db6045b33535a06f46f348bc79f15f7e73e68b53d8138a1ba9f20f7fa7db4612f920127777950fcf23531db036ee12056213fcaf149f50a14ad93f46a449b26d111a0eb48af300a2b60f247e52dd55b7cb4f49d53ee2b1c2530cb8797d4cb8f11750bfb2092e32557d896712e49399c8edcff7e4d6a0733a103528c7f1c22d4e0e3dda4fb4c90d0cd68c75423255917ec213f8f1823e5820a0aefdb1177ed2eca3946323b9527a6617f5d4c57572c17c7aa00ba70370897fae15e8bb004c4b16837035cc4587102e56c74d9d73fd8546ec45ad64e4567009179c1edbf426f86ff0e03ca39174a65a2ad00eea93b727e8577af2f5b12a94b07d148a0dd19a08200643798bc5eab66586a6c8a25b07c5a24b439073bf789c955972929a21bfc45f8ce9f12325489408e7d3c1fffd43741e5fed41fa301f9aec36d995a9087aa05c9b635d571b9322fcf178ed4d63ac7ec7ae47572db9472185c21609d3104406ff946535da1cf08bd7e9413ba85e1ee966eb519dc59a4a95d911481a830c48512cce77bcafd7e07ab5e2d3fa81c77a0372444fdf792e80fcd375ba8530e2d255542151656e85ea39bfc257207f3beba4e0b80e7ef07d1ec78e660570c7302900feaa14e57c73eef42c85aa", 0x254, 0xffffffffffffffff) (async) keyctl$read(0x2, r0, &(0x7f0000004e80)=""/4088, 0xff8) (async) socket$inet6_sctp(0xa, 0x1, 0x84) (async) 00:02:59 executing program 0: prctl$PR_SET_TAGGED_ADDR_CTRL(0x37, 0x1) (async) r0 = add_key(&(0x7f0000000000)='id_resolver\x00', &(0x7f0000000080)={'syz', 0x0}, &(0x7f0000000140)="6704eb4ea642f7f86f37f15017fc00b1b770d3d2bbedd5b38b1b1831516652f7890ba5f3153b5bdd9049e24b17b504cb915671b4264d6e1c61215f7dd6c6983398bbea3fa7601e2461c8a6d1230c1067c04b67e11a830d05c012328d07152f1bd9196ad80900e02f42b27b4e32a39b8f69ba4b535a1135b549615120af08c58db56777b048e062bb5d19db6045b33535a06f46f348bc79f15f7e73e68b53d8138a1ba9f20f7fa7db4612f920127777950fcf23531db036ee12056213fcaf149f50a14ad93f46a449b26d111a0eb48af300a2b60f247e52dd55b7cb4f49d53ee2b1c2530cb8797d4cb8f11750bfb2092e32557d896712e49399c8edcff7e4d6a0733a103528c7f1c22d4e0e3dda4fb4c90d0cd68c75423255917ec213f8f1823e5820a0aefdb1177ed2eca3946323b9527a6617f5d4c57572c17c7aa00ba70370897fae15e8bb004c4b16837035cc4587102e56c74d9d73fd8546ec45ad64e4567009179c1edbf426f86ff0e03ca39174a65a2ad00eea93b727e8577af2f5b12a94b07d148a0dd19a08200643798bc5eab66586a6c8a25b07c5a24b439073bf789c955972929a21bfc45f8ce9f12325489408e7d3c1fffd43741e5fed41fa301f9aec36d995a9087aa05c9b635d571b9322fcf178ed4d63ac7ec7ae47572db9472185c21609d3104406ff946535da1cf08bd7e9413ba85e1ee966eb519dc59a4a95d911481a830c48512cce77bcafd7e07ab5e2d3fa81c77a0372444fdf792e80fcd375ba8530e2d255542151656e85ea39bfc257207f3beba4e0b80e7ef07d1ec78e660570c7302900feaa14e57c73eef42c85aa", 0x254, 0xffffffffffffffff) keyctl$read(0x2, r0, &(0x7f0000004e80)=""/4088, 0xff8) (async) socket$inet6_sctp(0xa, 0x1, 0x84) 00:02:59 executing program 5: r0 = syz_io_uring_setup(0x1c16, &(0x7f0000000200), &(0x7f0000000000/0x4000)=nil, &(0x7f0000004000/0x2000)=nil, &(0x7f0000000040), &(0x7f00000000c0)) io_uring_enter(r0, 0xd26, 0x0, 0x0, &(0x7f0000000080)={[0x7fff]}, 0x8) (async) r1 = fcntl$dupfd(r0, 0x0, r0) syz_mount_image$ntfs3(&(0x7f0000000000), &(0x7f0000000180)='./file0\x00', 0x121804, 0xd, &(0x7f0000000200)=[{&(0x7f0000000100)="eb52904e544653202020200008012e000000000000f8000000000000000000000000000080008000ff030000000000000800000000000000ff010000000000000100000002", 0x45}, {&(0x7f0000000a80)="000000000000000000000000000000000000000000000000000000000000020046494c453000050000000000000000000300010040000100e8010000000800000000000000000000060000000300000004000000000000000000000000000000100000004800000000001800000000003000000018000000801875c1344fd801801875c1344fd801801875c1344fd801801875c1344fd801060000000000000000000000000000003000000068000000000018000000010050000000180001000500000000000500801875c1344fd801801875c1344fd801801875c1344fd801801875c1344fd8010000000000000013c32ed9369d870fd73a00000000000000000006000000000000000703240056006f006c0075006d00650050000000800000000000180000000200640000001800000001000480480000005400000000000000140000000200340002000000000014009f011200010100000000000512000000000018009f011200010200000000000520000000200200000101000000000000002002000000000000600000003000000000001800000004001200000018000000730079007a006b0061006c006c0065007200000000000000700000002800000000001800000005000c00000018000000000000000000000003010000000000008000000018000000000000000000000000000000965bf2e5d3ab4dae3b2a9a73afa6acf2e7259a17cc6bd0f8f1eab9a9e504ea852a83a1808e149ac4a8f3240c90bfa8a4676ecf3ac9d18ae26fe15a95ed30e6db2fa651b64bf23e11f2652e5fe50b3296485a6dc8", 0x24b, 0x49}, {&(0x7f0000000e80)="46494c453000050000000000000000000100010040000100a0010000000800000000000000000000040000000000000003000000000000000000000066290000100000006000000000001800e40000004800000018000000801875c1344fd801801875c1344fd801801875c1344fd801801875c1344fd80106000000000000000000000000000000000000000001000000000000000000000000000000000000300000006800000000001800000002004a000000180001000500000000000500801875c1344fd801801875c1344fd801801875c1344fd801801875c1344fd80100d800000000000000d80000000000000600000000000004000000000000000054000000000000008000000048000000010040000000010000000000000000007e00000000000000400000000000000000f803000000000000f803000000000000f8030000000000117f080000000000b000c7cf48000000010040f9ffff02000000000000000600000000000000008cd245f20000000000000800000000000010000000000000001000000000000000110104bf42e47f1abecfd6920a3f5b2164a7024d5dc97ec073d502f5ade5c7ef2f4fe4832698bcb5aa46c0541f736b41672364e708467a1e49ac9ec749ff27ebdbf7a87c8fc732c8eadb44230373122d50ec4cc4dcd513fe6da0c4fd8271f123447dcf7c9ad98fb1e21ac3a0b7ba17e1d9c39efd53df3604b2da25c1b22c1fcfab7bffa7572c7da9e97a6949aa10732fc3ed66504e41e855b5d0b7b8caeca54c9adb691abf12abb5faf2e5d2da", 0x23d, 0x4000}, {&(0x7f0000010320)="00000000000000000000000000000000b0000000ffff000001004000000003000000000000000000000000000000000040000000000000000008000000000000080000000000000008000000000000001101040000000000ffffffff0000030046494c45300005000000000000000000010001004000010060010000000800000000000000000000030000000100000002000000000000000000000000000000100000006000000000001800000000004800000018000000801875c1344fd801801875c1344fd801801875c1344fd801801875c1344fd801060000000000000000000000000000000000000000010000000000000000000000000000000000003000000070000000000018000000020052000000180001000500000000000500801875c1344fd801801875c1344fd801801875c1344fd801801875c1344fd801002000000000000000200000000000000600000000000000080324004d00460054004d006900720072000000000000008000000048", 0x175, 0x47a0}, {&(0x7f0000000500)="000000000000000000000000000000000000000000000000000000000000020046494c45300005000000000000000000020001004000010060010000000800000000000000000000030000000200000002000000000000000000000000000000100000006000000000001800000000004800000018000000801875c1344fd801801875c1344fd801801875c1344fd801801875c1344fd801060000000000000000000000000000000000000000010000000000000000000000000000000000003000000070000000000018000000020052000000180001000500000000000500801875c1344fd801801875c1344fd801801875c1344fd801801875c1344fd801000004000000000000000400000000000600000000000000080324004c006f006700460069006c0065000000000000008000000048000000010040000000010000000000000000007f0000000000000040000000000000000000040000000000000004000000000000000400000000002280000302", 0x175, 0x4fe0}, {&(0x7f0000001140)="000000000000000000000000000000000000000000000000000000000000040046494c453000050000000000000000000400010040000100c8010000000800000000000000000000040000000400000002000000000000000000000000000000100000004800000000001800000000003000000018000000801875c1344fd801801875c1344fd801801875c1344fd801801875c1344fd801060000000000000000000000000000003000000070000000000018000000020052000000180001000500000000000500801875c1344fd801801875c1344fd801801875c1344fd801801875c1344fd8010010000000000000000a00000000000006000000000000000803240041007400740072004400650066000000000000005000000080000000000018000000030064000000180000000100048048000000540000000000000014000000020034000200000000001400890012000101000000000005120000000000180089001200010200000000000520000000200200000101000000000005120000000102000000000005200000002002000000000000800000004800000001004000000001000000000000000000010000000000000040000000000000000010000000000000000a000000000000000a00000000000021028c", 0x1db, 0x5fe0}, {&(0x7f0000001340)="000000000000000000000000000000000000000000000000000000000000020046494c45300005000000000000000000050001004000030008020000000800000000000000000000060000000500000003000000000000000000000000000000100000004800000000001800000000003000000018000000801875c1344fd801fc42f8c1344fd801fc42f8c1344fd801801875c1344fd801262000100000000000000000000000003000000060000000000018000000010044000000180001000500000000000500801875c1344fd801801875c1344fd801801875c1344fd801801875c1344fd80100000000000000000000000000000000060000100000000001032e00000000005000000048000000010040000000020000000000000000000200000000000000400000000000000000180000000000002c100000000000002c100000000000002103870000000000900000005800000000041800000003003800000020000000240049003300300030000000010000000010000002", 0x17d, 0x67a0}, {&(0x7f0000000d00)="000000000000000000000000000000000000000000000000000000000000030046494c45300005000000000000000000060001004000010058010000000800000000000000000000030000000600000002000000000000000000000000000000100000006000000000001800000000004800000018000000801875c1344fd801801875c1344fd801801875c1344fd801801875c1344fd801060000000000000000000000000000000000000000010000000000000000000000000000000000003000000068000000000018000000020050000000180001000500000000000500801875c1344fd801801875c1344fd801801875c1344fd801801875c1344fd801000800000000000080000000000000000600000000000000070324004200690074006d00610070008000000048000000010040000000010000000000000000000000000000000000400000000000000000080000000000008000000000000000800000000000000021018e", 0x16b, 0x6fe0}, {&(0x7f0000011280)="00000000000000000000000000000000000000000000000000000000000002", 0x1f, 0x7fe0}, {&(0x7f00000194a0)="10", 0x1, 0x7fff}, {&(0x7f0000000680)="000000000000000000000000000000000000000000000000000000000000020046494c453000050000000000000000000900010040000900080300000008000000000000000000000500000009007e0003000000000000000000000000000000100000006000000000001800000000004800000018000000801875c1344fd801801875c1344fd801801875c1344fd801801875c1344fd8010600002000000000000000000000000000000000010100000000000000000000000000000000000030000000680000000000180000000100500000001800cf3a0500000000000500801875c1344fd801801875c1344fd801801875c1344fd801801875c1344fd8010000000000000000000000000000000006000020000000000703240053006500630075007200650080afdfc691223d1c92ca8f0c249f285800000050000000010440000000020000000000000000008000000000000000480000000000000000080400000000007001040000000000700104000000000024005300440053002281008f0000000090000000e00000000004180000000300c00000002000000024005300440048000000000012000000001000000200000010000000b0000000b000000000000000180014000000000030000800000000005124b300010100005124b3000101000080000000000000007c0000004900490018001400000000003000080000000000a0ddde4202010000a0ddde42020100000001000000000000640000004900490018001400000003003000080000000000f01203f800010000f01203f80001000000000000000000007c000000490049000000000000000000100000000200000090000000c80000000004180000000400a800000020000000240053004900490000000000100000000010000002000000100000009800000098000000000000001400140000000000280004000000000000010000f01203f80001000000000000000000007c00000014001400000000002800040000000000010100005124b3000101000080000000000000007c0000001400140000000000280004000000000002010000a0ddde4202010000000100000000000064000000000002a66ff406806950b1b78d0d969262a0a9dc76ba08121380ae353d0fa2e6e0296b31d5392cd2add8aa1b95e63e208d8a6349bd5ddfcf2c906177358467e63f624ff874968c1adff1b7790352edc84325ad6f7a91cf9f45d000000000000000000000dccce87da54a6c3aa53a6fd801a368ea7796cd7be323776dd4fdf8286e65a38f7740512444943406", 0x3ab, 0x87e0}, {&(0x7f0000011800)="000000000000000000000000000000000000000000000000000000000000030046494c45300005000000000000f400000a00010040000100a0010000000800000000000000000000040000000a00000002000000000000000000000000000000100000006000000000001800000000004800000018000000801875c1344fd801801875c1344fd801801875c1344fd801801875c1344fd801060000000000000000000000000000000000000000010000000000000000000000000000000000003000000068000000000018000000030050000000180001000500000000000500801875c1344fd801801875c1344fd801801875c1344fd801801875c1344fd801000002000000000000000200000000000600000000000000070324005500700043006100730065008000000048000000010040000000010000000000000000003f000000000000004000000000000000000002000000000000000200000000000000020000000000214010", 0x16b, 0x8fe0}, {&(0x7f000003a4a0)="0000000000000000000000000000000000000000000000000000000000000400ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff", 0x20024, 0x1017e0}], 0x9000, &(0x7f0000000440)=ANY=[], 0xff) (async) syz_mount_image$btrfs(&(0x7f0000000000), &(0x7f0000000100)='./file0\x00', 0x1002004, 0x34, &(0x7f0000000200)=[{&(0x7f0000011000)="104fbd63c0999926236bf44047f1379f5959aec2a59a421dabe0ae8c1082507110728f386baa48ac8c080b0b5bf8fd9200501006000000000000000000000001feaf326c3b5d43588bde9e065a8b80a801000000000000000700000000000000", 0x60, 0x1b}, {&(0x7f0000010000)="4269f9651b2449e2208babf6b80cf5c198a19f0605eaa33ac85fa699fc6e960410728f386baa48ac8c080b0b5bf8fd92000001000000000001000000000000005f42485266535f4d07000000000000000000500000000000001010000000000000000000000000000000000000000000000000010000000000d0000000000000060000000000000001000000000000000010000000100000001000000010000061000000040000000000000000000000000000000000000000000000c5010000000000000200000000010000000000000000000001000000000000720000000000001000000010000000100000000000000000000000000000000000000000000000000000000000000000585c50b36999488499985426484d35a610728f386baa48ac8c080b0b5bf8fd9200"/320, 0x140, 0x10000}, {&(0x7f0000010200)='\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\a\x00\x00\x00\x00\x00\x00\x00\a\x00'/32, 0x20, 0x10220}, {&(0x7f0000010300)="00000000000000000000000001000000000000e4000010000000000000004000000000000200000000000000000001000000000002000000000000000010000000100000001000000100000001000000000000000000100000000000585c50b36999488499985426484d35a600"/128, 0x80, 0x10320}, {&(0x7f0000010400)="000000000000000000000000105000000000000500000000000000001010000000000004000000000000000020500000000000050000000000000000005000000000000400000000000000007050000000000004000000000000000080500000000000040000000000000000000001000000000080000000000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f050000000000006000000000000000010100000000000040000000000000000b0500000000000060000000000000000d050000000000006000000000000000000510000000000060000000000000000605000000000000600000000000000000000010000000000d0000000000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000005000000000000700000000000000001010000000000004000000000000000010500000000000070000000000000000d050000000000006000000000000000000510000000000060000000000000000605000000000000600000000000000000000010000000000d00000000000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000005050000000000004000000000000000010100000000000040000000000000000605000000000000400000000000000000050000000000004000000000000000070500000000000040000000000000000805000000000000400000000000000000000010000000000800000000000000100"/640, 0x280, 0x10b20}, {&(0x7f0000010700)="7c21e1a2b3acb2387469f4c3dcf17fb37ef5f4b2d7b0626c177f51bfe46138f910728f386baa48ac8c080b0b5bf8fd9200001000000000000100000000000001feaf326c3b5d43588bde9e065a8b80a80300000000000000030000000000000004000000000100000000000000d80100000000000000390f0000620000000001000000000000e40000100000000000e90e0000500000000001000000000000e40000500000000000990e0000500000000001000000000000e40000690000000000490e00005000"/224, 0xe0, 0x100000}, {&(0x7f0000010800)="000000000000000000000000000000001900000000000200000000000000000001000000000005000000000000000000010000000100001000000100010001000000000000000000690000000000585c50b36999488499985426484d35a600001900000000000200000000000000000001000000000005000000000000000000010000000100001000000100010001000000000000000000500000000000585c50b36999488499985426484d35a600004000000000000200000000000000000001000000000002000000000000000010000000100000001000000100000001000000000000000000100000000000585c50b36999488499985426484d35a6010000000000000000000001000000000000720000000000001000000010000000100000000000000000000000000000000000000000000000000000000000000000585c50b36999488499985426484d35a610728f386baa48ac8c080b0b5bf8fd924dc532c89abb41c152e349ee2eac294e36ecc460bf2160318d007ed1a365653f10728f386baa48ac8c080b0b5bf8fd9200101000000000000100000000000001feaf326c3b5d43588bde9e065a8b80a80400000000000000030000000000000004000000000100000000000000d80100000000000000390f0000620000000001000000000000e40000100000000000e90e0000500000000001000000000000e40000500000000000990e0000500000000001000000000000e40000690000000000490e00005000"/576, 0x240, 0x100ea0}, {&(0x7f0000010b00)="000000000000000000000000000000001900000000000200000000000000000001000000000005000000000000000000010000000100001000000100010001000000000000000000690000000000585c50b36999488499985426484d35a600001900000000000200000000000000000001000000000005000000000000000000010000000100001000000100010001000000000000000000500000000000585c50b36999488499985426484d35a600004000000000000200000000000000000001000000000002000000000000000010000000100000001000000100000001000000000000000000100000000000585c50b36999488499985426484d35a6010000000000000000000001000000000000720000000000001000000010000000100000000000000000000000000000000000000000000000000000000000000000585c50b36999488499985426484d35a610728f386baa48ac8c080b0b5bf8fd923d8ac58ea0f6e35ed4063af3f0abdad94a11909415d6327f7b91b83581781f0510728f386baa48ac8c080b0b5bf8fd9200201000000000000000000000000001feaf326c3b5d43588bde9e065a8b80a80100000000000000030000000000000002000000000100000000000000d80100000000000000390f0000620000000001000000000000e40000100000000000e90e00005000"/512, 0x200, 0x101ea0}, {&(0x7f0000010d00)="000000000000000000000000000000004000000000000200000000000000000001000000000002000000000000000010000000100000001000000100000001000000000000000000100000000000585c50b36999488499985426484d35a6010000000000000000000001000000000000400000000000001000000010000000100000000000000000000000000000000000000000000000000000000000000000585c50b36999488499985426484d35a610728f386baa48ac8c080b0b5bf8fd927195a377b9c35072f592f5bb13dd4d230b0330f666cab857813b5f592b4eb79310728f386baa48ac8c080b0b5bf8fd9200301000000000000000000000000001feaf326c3b5d43588bde9e065a8b80a80100000000000000040000000000000001000000000100000000000000cc00001000000000006b0f0000300000000000", 0x140, 0x102f40}, {&(0x7f0000000700)="0000000000000000000000000000000003000000000000000001000000000099a359ec53ca130000001000000000000000400000000000feaf326c3b5d43588bde9e065a8b80a8af4d4af667c2e613e90500000000000000088003ac010631cf4f99a6b8c8e5f210728f386baa48ac8c080b0b5bf8fd92004010000000000000000000000000d57c527af186be249f01feaf326c3b5d43588bde9e065a8b80a8010000000000000005000000000000005696cfc76c3dd4a1b28dc9e7c1e922ac764aa88f51cad055223ea89b841bfbe81fb1328ccc6e610cefdd08c05fc8ad005a4e4df19e1dd49b37ee4ad1a4c4edfa8a16d9298bae5f3bdc6484f4b6", 0xfd, 0x103fc0}, {&(0x7f0000011100)="745d8cc7f1a5b36daaf2177c6eaa7bec59aa10fbd605ab22905f87ef8ab7eb3a10728f386baa48ac8c080b0b5bf8fd9200601000000000000100000000000001feaf326c3b5d43588bde9e065a8b80a8020000000000000002000000000000000a000000000000100000000000c00000400000000000830f0000180000000040100000000000a900000000000000006b0f0000180000000040100000000000b005000000000000006b0f0000000000000050100000000000a90000000000000000530f0000180000000050100000000000b00700000000000000530f0000000000000060100000000000a90000000000000000320f0000210000000070100000000000a90000000000000000110f0000210000000080100000000000a90000000000000000f00e0000210000000000500000000000a90000000000000000cf0e0000210000000000500000000000c00000190000000000b70e0000180000000000500000000000c00000190000000000d80e0000180000000000500000000000c000001900000000000b0f0000180000000050100000000000b007000000000000000b0f0000000000000000500000000000c00000190000000000f30e000018", 0x1c0, 0x106000}, {&(0x7f0000011300)="00000000000000000000000000000000000000000000000000000000001000000000000000010000000000000500000000000000010000000000000002000000000000000200000000000000b00100000000000000010000000000000002000000000000000200000000000000b00300000000000000010000000000000002000000000000000200000000000000b00400000000000000010000000000000002000000000000000200000000000000b00200000000000000010000000000000001000000000000000200000000000000010000000000000001000000000000000200000000000000005000000000000000010000000000000200000000000000bea92f84cb2769e88c1bfb106ee6f3c9336ed334272e3c22f9b9172fbc48615e10728f386baa48ac8c080b0b5bf8fd9200701000000000000100000000000001feaf326c3b5d43588bde9e065a8b80a80200000000000000040000000000000002000000000100000000000000cc00001000000000006b0f0000300000000100000000000000cc00005000000000003b0f00003000"/416, 0x1a0, 0x106f00}, {&(0x7f0000011500)="0300000000000000000100000000000000005000000000000000190000000000feaf326c3b5d43588bde9e065a8b80a80300000000000000000100000000000000001000000000000000400000000000feaf326c3b5d43588bde9e065a8b80a80f0dcb27620f93c61dfe5735ec4f4b9cc12cfe480144337afd5faf3a3e5bc53810728f386baa48ac8c080b0b5bf8fd9200801000000000000100000000000001feaf326c3b5d43588bde9e065a8b80a80200000000000000030000000000000003000000000100000000000000d80100000000000000390f0000620000000001000000000000e40000100000000000e90e0000500000000001000000000000e40000500000000000990e00005000"/288, 0x120, 0x107fa0}, {&(0x7f0000011700)="1900000000000200000000000000000001000000000005000000000000000000010000000100001000000100010001000000000000000000500000000000585c50b36999488499985426484d35a600004000000000000200000000000000000001000000000002000000000000000010000000100000001000000100000001000000000000000000100000000000585c50b36999488499985426484d35a6010000000000000000000001000000000000590000000000001000000010000000100000000000000000000000000000000000000000000000000000000000000000585c50b36999488499985426484d35a610728f386baa48ac8c080b0b5bf8fd92", 0x100, 0x108efc}, {&(0x7f0000011800)="6db2faa7ed3470e70331f743dcf6d021ccf4b1ad818cc8f48cff050358d9ec8010728f386baa48ac8c080b0b5bf8fd9200005000000000000100000000000001feaf326c3b5d43588bde9e065a8b80a8070000000000000001000000000000000a000000000200000000000000840000000000000000e40d0000b701000004000000000000008400000000000000002d0c0000b701000005000000000000000c06000000000000001c0c0000110000000500000000000000840000000000000000650a0000b70100000600000000000000010000000000000000c5090000a000000006000000000000000c0600000000000000b90900000c000000060000000000000054d2c2bf8d0000000094090000250000000700000000000000840000000000000000dd070000b7010000090000000000000084000000000000000026060000b7010000f7ffffffffffffff8400000000000000006f040000b701000000", 0x160, 0x500000}, {&(0x7f0000011a00)="0000000000000000000000000000000000000000040000000000000000010000000000000090500000000000000000000000000000100000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000400"/128, 0x80, 0x500560}, {&(0x7f0000011b00)="00000000000000000000000400000000000000000000000000000000a050000000000000000000000000000010000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000040000000000", 0x60, 0x500720}, {&(0x7f0000011c00)="000001000000000000000000000000000000030000000000000000100000000000000000000000000000010000000000000000000000ed410000000000000000", 0x40, 0x500840}, {&(0x7f0000011d00)="0000060000000000000000000000000000000060500000000000000000000000000000100000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000600"/96, 0x60, 0x5008e0}, {&(0x7f0000011e00)="00000000000000000000000000000000000000000000000000050000000000000084ffffffffffffffff0000000000000000000007000264656661756c74000000000000000002002e2e03000000000000000000000000000000000000000000000000100000000000000000000000000000010000000000000000000000ed41000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005cbc645f00000000000000005cbc645f00000000000000005cbc645f00000000000000005cbc645f000000000000000001000000000000000000000000000000030000000000000000100000000000000000000000000000010000000000000000000000ed410000000000000000000000000080ffffffff00"/320, 0x140, 0x5009e0}, {&(0x7f0000012000)="000000000000000000000600000000000000000100000000000000d050000000000000000000000000000030000000000000000000000000000000000000000000000100000000000000000000000000000000000000000001060000000000000082f6dc9922aa4f6499776c038d92ced8000000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000005dbc645f0000000020f1a80e5cbc645f00"/224, 0xe0, 0x500b60}, {&(0x7f0000012100)="000000000000000000070064656661756c7401000000000000000000000000000000030000000000000000100000000000000000000000000000010000000000000000000000ed4100"/96, 0x60, 0x500c80}, {&(0x7f0000012200)="000000000000000000000000000000000000060000000000000000000000000000000000510000000000000000000000000000100000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000600"/128, 0x80, 0x500d20}, {&(0x7f0000012300)="00000000000000000001000000000000000000000000000000030000000000000000100000000000000000000000000000010000000000000000000000ed4100", 0x40, 0x500e40}, {&(0x7f0000012400)="000000000000000000070000000000000000000000000000000010500000000000000000000000000000100000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000700000000000000", 0x60, 0x500ee0}, {&(0x7f0000012500)="48e59d4e802972949d6943f6ad6cc5d5bebea09a024ae5af0c5617fe0871c5ec10728f386baa48ac8c080b0b5bf8fd9200105000000000000100000000000001feaf326c3b5d43588bde9e065a8b80a8070000000000000002000000000000000e000000000000100000000000c00000400000000000830f0000180000000010100000000000a90000000000000000620f0000210000000000500000000000a90000000000000000410f0000210000000000500000000000c00000190000000000290f0000180000000010500000000000a90000000000000000080f0000210000000030500000000000a80030000000000000d30e0000350000000060500000000000a90000000000000000b20e0000210000000090500000000000a90000000000000000910e00002100000000a0500000000000a90000000000000000700e00002100000000c0500000000000a900000000000000004f0e00002100000000d0500000000000a901000000000000002e0e00002100000000e0500000000000a900000000000000000d0e0000210000000000510000000000a90000000000000000ec0d0000210000000000690000000000c00000190000000000d40d000018", 0x1c0, 0x501000}, {&(0x7f0000012700)="0000010000000000000500000000000000010000000000000006000000000000000200000000000000b00400000000000000010000000000000006000000000000000200000000000000b00500000000000000010000000000000006000000000000000200000000000000b00500000000000000010000000000000006000000000000000200000000000000b00500000000000000010000000000000004000000000000000200000000000000b00900000000000000010000000000000004000000000000000200000000000000b0f7ffffffffffffff010000000000000006000000000000000200000000000000b00700000000000000010000000000000006000000000000000100000000000000b205000000000000000501000000000000000000000000000001000000010000000000000007000000000000000200000000000000b0020000000000000000c000000000000000010000000000000500000000000000010000000000000007000000000000000200000000000000b00100000000000000010000000000000004000000000000000200000000000000b003000000000000000010000000000000000100000000000002000000000000005899519175eec0d0f4e97e7b684d27bb7b8d9ea6c09b008f532f3648af7aeef410728f386baa48ac8c080b0b5bf8fd9200205000000000000100000000000001feaf326c3b5d43588bde9e065a8b80a8050000000000000002000000000000000b000000000000100000000000c00000400000000000830f0000180000000010100000000000a90000000000000000620f0000210000000000500000000000a90000000000000000410f0000210000000000500000000000c00000190000000000290f0000180000000010500000000000a90000000000000000080f0000210000000020500000000000a90000000000000000e70e0000210000000070500000000000a90000000000000000c60e0000210000000080500000000000a90000000000000000a50e0000210000000090500000000000a90000000000000000840e00002100000000a0500000000000a90000000000000000630e0000210000000000690000000000c000001900000000004b0e0000180000000000690000000000c000001900000000004b0e0000180000000000690000000000c000001900000000002a0e0000180000000000500000000000c00000190000000000f30e000018", 0x380, 0x501e40}, {&(0x7f0000012b00)="0000000000000000000000000000000000000000000000010000000000000500000000000000010000000000000004000000000000000000010000000000000500000000000000010000000000000004000000000000000000010000000000000500000000000000010000000000000004000000000000000200000000000000b00900000000000000010000000000000004000000000000000200000000000000b0f7ffffffffffffff010000000000000004000000000000000200000000000000b00700000000000000010000000000000004000000000000000200000000000000b00400000000000000010000000000000005000000000000000200000000000000b00200000000000000010000000000000005000000000000000200000000000000b00100000000000000007000000000000000010000000000000500000000000000010000000000000004000000000000000200000000000000b00500000000000000010000000000000004000000000000000200000000000000b00300000000000000001000000000000000010000000000000200000000000000", 0x1a0, 0x502e60}, {&(0x7f0000012d00)="d1fd288d6da93056690fba437a87a8abd55a920718151512a0d0ccbba390f00d10728f386baa48ac8c080b0b5bf8fd9200605000000000000100000000000001feaf326c3b5d43588bde9e065a8b80a8060000000000000007000000000000000100000000f6ffffffffffffff8000305000000000003b0f0000600000000000", 0x80, 0x506000}, {&(0x7f0000012e00)="ad7facb2586fc6e966c004d7d1d16b024f5805ff7cb47c7a85dabd8b48892ca7ad7facb2586fc6e966c004d7d1d16b024f5805ff7cb47c7a85dabd8b48892ca7ad7facb2586fc6e966c004d7d1d16b024f5805ff7cb47c7a85dabd8b48892ca7447913ef673394db702dace49efbaf08f155b88408e5eedcac138974200e844c10728f386baa48ac8c080b0b5bf8fd9200705000000000000100000000000001feaf326c3b5d43588bde9e065a8b80a80400000000000000040000000000000003000000000100000000000000cc00001000000000006b0f0000300000000100000000000000cc00005000000000003b0f0000300000000100000000000000cc00006900000000000b0f00003000"/288, 0x120, 0x506fa0}, {&(0x7f0000013000)="000000000000000000000000000000000300000000000000000100000000000000006900000000000000190000000000feaf326c3b5d43588bde9e065a8b80a80300000000000000000100000000000000005000000000000000190000000000feaf326c3b5d43588bde9e065a8b80a80300000000000000000100000000000000001000000000000000400000000000feaf326c3b5d43588bde9e065a8b80a8d68671688d9029647c79ad4bf42be1306aa04a2b987e62d18f3af37be47a39ac10728f386baa48ac8c080b0b5bf8fd9200805000000000000100000000000001feaf326c3b5d43588bde9e065a8b80a804000000000000000700000000000000", 0x100, 0x507f60}, {&(0x7f0000013100)="280446fba903676714a199208da7bbbcc64014cf0f8da172f7c43601835a1b5c10728f386baa48ac8c080b0b5bf8fd9200905000000000000100000000000001feaf326c3b5d43588bde9e065a8b80a80400000000000000f7ffffffffffffff02000000000001000000000000010000000000000000fb0e0000a000000000010000000000000c0001000000000000ef0e00000c00"/160, 0xa0, 0x509000}, {&(0x7f0000013200)="0000000000000000000000000000000000000000000000000000000002002e2e04000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000ed41000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005cbc645f00000000000000005cbc645f00000000000000005cbc645f00000000000000000000000000000000000000007e341445892f598b6f54607c802b8c8830d38fb814020f173e9c2a07cfb297f110728f386baa48ac8c080b0b5bf8fd9200a05000000000000100000000000001feaf326c3b5d43588bde9e065a8b80a804000000000000000900000000000000010000000082f6dc9922aa4f64fb99776c038d92ced8930f0000080000000000", 0x140, 0x509f40}, {&(0x7f0000013400)="00000000000000000000000000000000000000000000000005000000000000003dc675ab2d33d4fe834e8ea2be9e258bce44eeea134d888431f4962e5ac71a7d10728f386baa48ac8c080b0b5bf8fd9200b05000000000000100000000000001feaf326c3b5d43588bde9e065a8b80a8060000000000000002000000000000000e000000000000100000000000c00000400000000000830f0000180000000010100000000000a90000000000000000620f0000210000000000500000000000c000001900000000004a0f0000180000000030500000000000a80030000000000000150f0000350000000060500000000000a90000000000000000f40e0000210000000090500000000000a90000000000000000d30e00002100000000a0500000000000a90000000000000000b20e00002100000000b0500000000000a90000000000000000910e00002100000000c0500000000000a90000000000000000700e00002100000000d0500000000000a901000000000000004f0e00002100000000e0500000000000a900000000000000002e0e00002100000000f0500000000000a900000000000000000d0e0000210000000000510000000000a90000000000000000ec0d0000210000000000690000000000c00000190000000000d40d000018", 0x1e0, 0x50afe0}, {&(0x7f0000013600)="0000010000000000000500000000000000010000000000000006000000000000000200000000000000b00400000000000000010000000000000006000000000000000200000000000000b00100000000000000010000000000000006000000000000000200000000000000b00500000000000000010000000000000006000000000000000200000000000000b00500000000000000010000000000000006000000000000000200000000000000b00500000000000000010000000000000006000000000000000200000000000000b00200000000000000010000000000000004000000000000000200000000000000b00900000000000000010000000000000004000000000000000200000000000000b0f7ffffffffffffff010000000000000006000000000000000200000000000000b00700000000000000010000000000000006000000000000000100000000000000b20500000000000000050100000000000000000000000000000100000000c000000000000000010000000000000500000000000000010000000000000004000000000000000200000000000000b00300000000000000001000000000000000010000000000000200000000000000291bbaf3ff2ffec36c3d0dee0f69a12c2e2d9e73fd02651c62cab08b7e32a08c10728f386baa48ac8c080b0b5bf8fd9200c05000000000000100000000000001feaf326c3b5d43588bde9e065a8b80a80600000000000000050000000000000012000000000001000000000000010000000000000000fb0e0000a000000000010000000000000c0001000000000000ef0e00000c0000000001000000000000544bae790400000000cc0e0000230000000001000000000000546b826b1100000000a50e000027000000000100000000000054bf5d291700000000820e000023000000000100000000000054bcde42e5000000005f0e000023000000000100000000000054482d12f6000000003c0e0000230000000001000000000000600200000000000000190e0000230000000001000000000000600300000000000000f60d0000230000000001000000000000600400000000000000d30d0000230000000001000000000000600500000000000000b00d0000230000000001000000000000600600000000000000890d0000270000000101000000000000010000000000000000e90c0000a000000001010000000000000c0001000000000000da0c00000f0000000101000000000000544bae790400000000b70c000023000000010100000000000054482d12f600000000940c0000230000000101000000000000600200000000000000710c00002300000001010000000000006003000000000000004e0c00002300"/1024, 0x400, 0x50be40}, {&(0x7f0000013a00)="0000000000000000000000000000000000000003010000000000000100000000000000000600000000000000000005000766696c653102010000000000000100000000000000000600000000000000000005000166696c653003010000000000000100000000000000000600000000000000000005000766696c653102010000000000000100000000000000000600000000000000000005000166696c65300200000000000000050066696c653006000000000000000600000000000000140000000000000000000000000000000000000000000000010000000000000000000000ed41000000000000000000000000000000000000080000000000000000000000000000000000000000000000000000000000000000000000000000005dbc645f00000000cab5280d5dbc645f00000000cab5280d5dbc645f00000000cab5280d5dbc645f00000000cab5280d06010000000000000100000000000000000600000000000000000009000166696c652e636f6c6405010000000000000100000000000000000600000000000000000005000166696c653305010000000000000100000000000000000600000000000000000005000166696c653204010000000000000100000000000000000600000000000000000005000166696c653101010000000000000100000000000000000600000000000000000005000266696c653004010000000000000100000000000000000600000000000000000005000166696c653105010000000000000100000000000000000600000000000000000005000166696c653205010000000000000100000000000000000600000000000000000005000166696c653306010000000000000100000000000000000600000000000000000009000166696c652e636f6c6401010000000000000100000000000000000600000000000000000005000266696c6530000000000000000002002e2e030000000000000006000000000000003a0000000000000000100000000000000000000000000000010000000000000000000000ed41000000000000000000000000000000000000050000000000000000000000000000000000000000000000000000000000000000000000000000005cbc645f00000000000000005dbc645f00000000e6be650d5dbc645f00000000e6be650d5cbc645f00000000000000000654f9895dbe2f86073d7756fcf442ec664accfa8c145419b062e95f09f6416c10728f386baa48ac8c080b0b5bf8fd9200d05000000000000100000000000001feaf326c3b5d43588bde9e065a8b80a8060000000000000005000000000000000200000001000100000000000001000000000000000000c05000000000000600000000000000020100000000000001000000000000000000e050000000000006", 0x400, 0x50cca0}, {&(0x7f0000013e00)="04a1ef51571117a553e54f9a86db65f23a8e709055e86c535f82b3795648ed2b10728f386baa48ac8c080b0b5bf8fd9200e05000000000000100000000000001feaf326c3b5d43588bde9e065a8b80a80600000000000000050000000000000011000000000201000000000000010000000000000000fb0e0000a000000002010000000000000c0101000000000000ec0e00000f00000002010000000000006c0000000000000000bd0a00002f04000003010000000000000100000000000000001d0a0000a000000003010000000000000c01010000000000000e0a00000f00000003010000000000006c0000000000000000d30900003b000000040100000000000001000000000000000033090000a000000004010000000000000c0001000000000000240900000f00000004010000000000001822a8f12600000000f50800002f000000040100000000000018d65ba13500000000c60800002f00000004010000000000006c0000000000000000a70800001f000000050100000000000001000000000000000007080000a000000005010000000000000c0001000000000000e90700001e00000005010000000000006c0000000000000000b407000035000000060100000000000001000000000000000014070000a000000006010000000000000c0001000000000000010700001300000006010000000000006c0000000000000000880600007900"/544, 0x220, 0x50e000}, {&(0x7f0000014100)="0000000000000000000000000006000000000000006400000000000000000000000073797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c6572730600000000000000090066696c652e636f6c6406000000000000000600000000000000640000000000000064000000000000000000000000000000010000000000000000000000ed81000000000000000000000000000000000000050000000000000000000000000000000000000000000000000000000000000000000000000000005dbc645f00000000e6be650d5dbc645f00000000e6be650d5dbc645f00000000e6be650d5dbc645f00000000e6be650d06000000000000000030000000000000000000000100305000000000000030000000000000000000000000000000300000000000000400000000000000050066696c65320500000000000000050066696c653306000000000000000600000000000000282300000000000000300000000000000000000000000000020000000000000000000000ed81000000000000000000000000000000000000050000000000000000000000000000000000000000000000000000000000000000000000000000005dbc645f00000000e6be650d5dbc645f00000000e6be650d5dbc645f00000000e6be650d5dbc645f00000000e6be650d06000000000000000a00000000000000000000000073797a6b616c6c6572730000000000000000000000000000000000060000000000000006000b0008757365722e7861747472317861747472310000000000000000000000000000000000060000000000000006000b0008757365722e7861747472327861747472320300000000000000050066696c6531060000000000000006000000000000000a000000000000000a000000000000000000000000000000010000000000000000000000ed81000000000000000000000000000000000000080000000000000000000000000000000000000000000000000000000000000000000000000000005dbc645f00000000cab5280d5dbc645f00000000e6be650d5dbc645f00000000e6be650d5dbc645f00000000cab5280d0600000000000000260000000000000000000000002f746d702f73797a2d696d61676567656e3537303930383734312f66696c65302f66696c65300300000000000000050066696c653106000000000000000600000000000000260000000000000026000000000000000000000000000000010000000000000000000000ffa1000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000000000000000000005dbc645f00000000cab5280d5dbc645f00000000cab5280d5dbc645f00000000cab5280d5dbc645f00000000cab5280d06000000000000001a04000000000000000000000073797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c0200000000000000050066696c6530060000000000000006000000000000001a040000000000001a040000000000000000000000000000010000000000000000000000ed81000000000000000000000000000000000000080000000000000000000000000000000000000000000000000000000000000000000000000000005dbc645f00000000cab5280d5dbc645f00000000cab5280d5dbc645f00000000cab5280d5dbc645f00000000cab5280d9a9fc89e99236eec346f6d2afc04843693b23119aed4f7c59071ba7e49c5092e10728f386baa48ac8c080b0b5bf8fd9200f05000000000000100000000000001feaf326c3b5d43588bde9e065a8b80a8060000000000000001000000000000000a000000000200000000000000840000000000000000e40d0000b701000004000000000000008400000000000000002d0c0000b701000005000000000000000c06000000000000001c0c0000110000000500000000000000840000000000000000650a0000b70100000600000000000000010000000000000000c5090000a000000006000000000000000c0600000000000000b90900000c000000060000000000000054d2c2bf8d0000000094090000250000000700000000000000840000000000000000dd070000b7010000090000000000000084000000000000000026060000b7010000f7ffffffffffffff8400000000000000006f040000b701000000", 0xa80, 0x50e6e0}, {&(0x7f0000014c00)="0000000000000000000000000000000000000000040000000000000000010000000000000090500000000000000000000000000000100000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000400"/128, 0x80, 0x50f560}, {&(0x7f0000014d00)="00000000000000000000000400000000000000000000000000000000a050000000000000000000000000000010000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000040000000000", 0x60, 0x50f720}, {&(0x7f0000014e00)="000001000000000000000000000000000000030000000000000000100000000000000000000000000000010000000000000000000000ed410000000000000000", 0x40, 0x50f840}, {&(0x7f0000014f00)="0000060000000000000000000000000000000060500000000000000000000000000000100000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000600"/96, 0x60, 0x50f8e0}, {&(0x7f0000015000)="00000000000000000000000000000000000000000000000000050000000000000084ffffffffffffffff0000000000000000000007000264656661756c74000000000000000002002e2e03000000000000000000000000000000000000000000000000100000000000000000000000000000010000000000000000000000ed41000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005cbc645f00000000000000005cbc645f00000000000000005cbc645f00000000000000005cbc645f000000000000000001000000000000000000000000000000030000000000000000100000000000000000000000000000010000000000000000000000ed410000000000000000000000000080ffffffff00"/320, 0x140, 0x50f9e0}, {&(0x7f0000015200)="000000000000000000000600000000000000000100000000000000d050000000000000000000000000000030000000000000000000000000000000000000000000000100000000000000000000000000000000000000000001060000000000000082f6dc9922aa4f6499776c038d92ced8000000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000005dbc645f0000000020f1a80e5cbc645f00"/224, 0xe0, 0x50fb60}, {&(0x7f0000015300)="000000000000000000070064656661756c7401000000000000000000000000000000030000000000000000100000000000000000000000000000010000000000000000000000ed4100"/96, 0x60, 0x50fc80}, {&(0x7f0000015400)="000000000000000000000000000000000000060000000000000000000000000000000000510000000000000000000000000000100000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000600"/128, 0x80, 0x50fd20}, {&(0x7f0000015500)="00000000000000000001000000000000000000000000000000030000000000000000100000000000000000000000000000010000000000000000000000ed4100", 0x40, 0x50fe40}, {&(0x7f0000000080)="0000000000000000000600000000000000000000000000000000b05000000000000000000000000000001000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000006000000000fddd23eb25bd83b9be5ad6a0000", 0x6b, 0x50fee0}, {&(0x7f0000015700)="abbf70913dd77404e1610f7ce2992624cd942ced68b392f6892c965f400ef26410728f386baa48ac8c080b0b5bf8fd9200005100000000000100000000000001feaf326c3b5d43588bde9e065a8b80a80600000000000000040000000000000004000000000000000000000000f90100000000000000730f0000280000000100000000000000cc0000100000000000430f0000300000000100000000000000cc0000500000000000130f0000300000000100000000000000cc0000690000000000e30e00003000"/224, 0xe0, 0x510000}, {&(0x7f0000015800)="00000000000000000300000000000000000100000000000000006900000000000000190000000000feaf326c3b5d43588bde9e065a8b80a80300000000000000000100000000000000005000000000000000190000000000feaf326c3b5d43588bde9e065a8b80a80300000000000000000100000000000000001000000000000000400000000000feaf326c3b5d43588bde9e065a8b80a80000000000000000", 0xa0, 0x510f40}, {&(0x7f0000015900)="a65d691095e02ca7c1d0843d021082f7c71fbc88a7499a6e72264990ef73a8ee10728f386baa48ac8c080b0b5bf8fd9200006900000000000100000000000001feaf326c3b5d43588bde9e065a8b80a8060000000000000005000000000000001c000000000001000000000000010000000000000000fb0e0000a000000000010000000000000c0001000000000000ef0e00000c0000000001000000000000544bae790400000000cc0e0000230000000001000000000000546b826b1100000000a50e000027000000000100000000000054bf5d291700000000820e000023000000000100000000000054bcde42e5000000005f0e000023000000000100000000000054482d12f6000000003c0e00002300000001010000000000000100000000000000009c0d0000a000000001010000000000000c00010000000000008d0d00000f0000000101000000000000544bae7904000000006a0d000023000000010100000000000054482d12f600000000470d0000230000000201000000000000010000000000000000a70c0000a000000002010000000000000c0101000000000000980c00000f00000002010000000000006c0000000000000000690800002f0400000301000000000000010000000000000000c9070000a000000003010000000000000c0101000000000000ba0700000f00000003010000000000006c00000000000000007f0700003b0000000401000000000000010000000000000000df060000a000000004010000000000000c0001000000000000d00600000f00000004010000000000001822a8f12600000000a10600002f000000040100000000000018d65ba13500000000720600002f00000004010000000000006c0000000000000000530600001f0000000501000000000000010000000000000000b3050000a000000005010000000000000c0001000000000000950500001e00000005010000000000006c000000000000000060050000350000000601000000000000010000000000000000c0040000a000000006010000000000000c0001000000000000ad0400001300000006010000000000006c000000000000000034040000790000", 0x320, 0x690000}, {&(0x7f0000015d00)="0000000000000000000000000000000000000000000000000006000000000000006400000000000000000000000073797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c6572730600000000000000090066696c652e636f6c6406000000000000000600000000000000000000000000000000000000000000000000000000000000010000000000000000000000ff81000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000000000000000000005dbc645f00000000e6be650d5dbc645f00000000e6be650d5dbc645f00000000e6be650d5dbc645f00000000e6be650d06000000000000000030000000000000000000000100305000000000000030000000000000000000000000000000300000000000000400000000000000050066696c65320500000000000000050066696c653306000000000000000600000000000000000000000000000000000000000000000000000000000000010000000000000000000000ff81000000000000000000000000000000000000030000000000000000000000000000000000000000000000000000000000000000000000000000005dbc645f00000000e6be650d5dbc645f00000000e6be650d5dbc645f00000000e6be650d5dbc645f00000000e6be650d06000000000000000a00000000000000000000000073797a6b616c6c6572730000000000000000000000000000000000060000000000000006000b0008757365722e7861747472317861747472310000000000000000000000000000000000060000000000000006000b0008757365722e7861747472327861747472320300000000000000050066696c653106000000000000000600000000000000000000000000000000000000000000000000000000000000010000000000000000000000ff81000000000000000000000000000000000000050000000000000000000000000000000000000000000000000000000000000000000000000000005dbc645f00000000cab5280d5dbc645f00000000cab5280d5dbc645f00000000cab5280d5dbc645f00000000cab5280d0600000000000000260000000000000000000000002f746d702f73797a2d696d61676567656e3537303930383734312f66696c65302f66696c65300300000000000000050066696c653106000000000000000600000000000000000000000000000000000000000000000000000000000000010000000000000000000000ffa1000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000000000000000000005dbc645f00000000cab5280d5dbc645f00000000cab5280d5dbc645f00000000cab5280d5dbc645f00000000cab5280d06000000000000001a04000000000000000000000073797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c0200000000000000050066696c653006000000000000000600000000000000000000000000000000000000000000000000000000000000010000000000000000000000ff81000000000000000000000000000000000000070000000000000000000000000000000000000000000000000000000000000000000000000000005dbc645f00000000cab5280d5dbc645f00000000cab5280d5dbc645f00000000cab5280d5dbc645f00000000cab5280d03010000000000000100000000000000000600000000000000000005000766696c653102010000000000000100000000000000000600000000000000000005000166696c65300200000000000000050066696c653006000000000000000600000000000000000000000000000000000000000000000000000000000000010000000000000000000000ff41000000000000000000000000000000000000060000000000000000000000000000000000000000000000000000000000000000000000000000005dbc645f00000000cab5280d5dbc645f00000000cab5280d5dbc645f00000000cab5280d5dbc645f00000000cab5280d04010000000000000100000000000000000600000000000000000005000166696c653105010000000000000100000000000000000600000000000000000005000166696c653205010000000000000100000000000000000600000000000000000005000166696c653306010000000000000100000000000000000600000000000000000009000166696c652e636f6c6401010000000000000100000000000000000600000000000000000005000266696c6530000000000000000002002e2e03000000000000000000000000000000000000000000000000100000000000000000000000000000010000000000000000000000ed41000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005cbc645f00000000000000005cbc645f00000000000000005cbc645f00000000000000005cbc645f0000000000000000", 0xb80, 0x690480}], 0x0, &(0x7f00000001c0)=ANY=[@ANYBLOB="6e2f73706163655f632f8744debb44"], 0x0) (async) r2 = syz_open_procfs(0xffffffffffffffff, &(0x7f0000001100)='fdinfo/4\x00') ioctl$VIDIOC_ENUMAUDOUT(r1, 0xc0345642, &(0x7f0000000a40)={0xf293, "72f75d591adfab2c502471b267d2f31107c8a03e8fc58301e6eff38dd38f2588", 0x2}) (async) pread64(r2, &(0x7f0000002140)=""/17, 0x11, 0x0) 00:02:59 executing program 1: r0 = socket$packet(0x11, 0x3, 0x300) setsockopt$packet_int(r0, 0x107, 0xf, &(0x7f0000006ffc)=0x4000000000000200, 0xe50fb6c50bc849c9) setsockopt$sock_int(r0, 0x1, 0xc, &(0x7f00000000c0)=0x800, 0x4) r1 = socket$nl_generic(0x10, 0x3, 0x10) ioctl$sock_SIOCGIFINDEX(r1, 0x8933, &(0x7f0000000000)={'macvlan0\x00', 0x0}) r3 = syz_open_procfs(0x0, &(0x7f0000000040)='attr/exec\x00') write$sysctl(r3, 0x0, 0x0) r4 = syz_open_procfs(0x0, &(0x7f0000000040)='attr/exec\x00') write$sysctl(r4, 0x0, 0x0) setsockopt$packet_int(r4, 0x107, 0xb, &(0x7f0000000100), 0x4) setsockopt$sock_attach_bpf(r3, 0x1, 0x32, &(0x7f0000000080), 0x4) bind$packet(r0, &(0x7f0000000040)={0x11, 0x0, r2, 0x1, 0x0, 0x6, @local}, 0x14) sendto$inet6(r0, &(0x7f0000000280)="0403092cadf7480401020200c52cf7c25975e010b02f0800eb2b2ff0dac8897c6b112002faffffff3066090cb600c5471d130a66321a54e7df305f80a88161b6fd8f24286a57c3feffff", 0xfc13, 0x800, 0x0, 0x2f) 00:02:59 executing program 5: mkdirat(0xffffffffffffff9c, &(0x7f0000000000)='./file0\x00', 0x0) mkdirat(0xffffffffffffff9c, &(0x7f0000000100)='./file1\x00', 0x0) mkdirat(0xffffffffffffff9c, &(0x7f0000000140)='./file1\x00', 0x1c0) r0 = syz_open_procfs(0x0, &(0x7f0000000040)='attr/exec\x00') write$sysctl(r0, 0x0, 0x0) renameat2(r0, &(0x7f0000000240)='./file1\x00', 0xffffffffffffff9c, &(0x7f0000000280)='./file0\x00', 0x0) r1 = syz_open_procfs(0x0, &(0x7f0000000040)='attr/exec\x00') write$sysctl(r1, 0x0, 0x0) mount$overlay(0x0, &(0x7f0000000200)='./bus\x00', &(0x7f0000000040), 0x24, &(0x7f00000000c0)=ANY=[@ANYRES16=r1]) mount$fuse(0x0, &(0x7f0000000180)='./bus\x00', 0x0, 0x200025, 0x0) r2 = syz_open_dev$vivid(&(0x7f0000000080), 0x0, 0x2) ioctl$F2FS_IOC_GARBAGE_COLLECT(r2, 0x4004f506, &(0x7f00000001c0)) 00:02:59 executing program 0: r0 = syz_io_uring_setup(0x1c16, &(0x7f0000000200), &(0x7f0000000000/0x4000)=nil, &(0x7f0000004000/0x2000)=nil, &(0x7f0000000040), &(0x7f00000000c0)) io_uring_enter(r0, 0xd26, 0x0, 0x0, &(0x7f0000000080)={[0x7fff]}, 0x8) r1 = fcntl$dupfd(r0, 0x0, r0) syz_mount_image$ntfs3(&(0x7f0000000000), &(0x7f0000000180)='./file0\x00', 0x121804, 0xd, &(0x7f0000000200)=[{&(0x7f0000000100)="eb52904e544653202020200008012e000000000000f8000000000000000000000000000080008000ff030000000000000800000000000000ff010000000000000100000002", 0x45}, {&(0x7f0000000a80)="000000000000000000000000000000000000000000000000000000000000020046494c453000050000000000000000000300010040000100e8010000000800000000000000000000060000000300000004000000000000000000000000000000100000004800000000001800000000003000000018000000801875c1344fd801801875c1344fd801801875c1344fd801801875c1344fd801060000000000000000000000000000003000000068000000000018000000010050000000180001000500000000000500801875c1344fd801801875c1344fd801801875c1344fd801801875c1344fd8010000000000000013c32ed9369d870fd73a00000000000000000006000000000000000703240056006f006c0075006d00650050000000800000000000180000000200640000001800000001000480480000005400000000000000140000000200340002000000000014009f011200010100000000000512000000000018009f011200010200000000000520000000200200000101000000000000002002000000000000600000003000000000001800000004001200000018000000730079007a006b0061006c006c0065007200000000000000700000002800000000001800000005000c00000018000000000000000000000003010000000000008000000018000000000000000000000000000000965bf2e5d3ab4dae3b2a9a73afa6acf2e7259a17cc6bd0f8f1eab9a9e504ea852a83a1808e149ac4a8f3240c90bfa8a4676ecf3ac9d18ae26fe15a95ed30e6db2fa651b64bf23e11f2652e5fe50b3296485a6dc8", 0x24b, 0x49}, {&(0x7f0000000e80)="46494c453000050000000000000000000100010040000100a0010000000800000000000000000000040000000000000003000000000000000000000066290000100000006000000000001800e40000004800000018000000801875c1344fd801801875c1344fd801801875c1344fd801801875c1344fd80106000000000000000000000000000000000000000001000000000000000000000000000000000000300000006800000000001800000002004a000000180001000500000000000500801875c1344fd801801875c1344fd801801875c1344fd801801875c1344fd80100d800000000000000d80000000000000600000000000004000000000000000054000000000000008000000048000000010040000000010000000000000000007e00000000000000400000000000000000f803000000000000f803000000000000f8030000000000117f080000000000b000c7cf48000000010040f9ffff02000000000000000600000000000000008cd245f20000000000000800000000000010000000000000001000000000000000110104bf42e47f1abecfd6920a3f5b2164a7024d5dc97ec073d502f5ade5c7ef2f4fe4832698bcb5aa46c0541f736b41672364e708467a1e49ac9ec749ff27ebdbf7a87c8fc732c8eadb44230373122d50ec4cc4dcd513fe6da0c4fd8271f123447dcf7c9ad98fb1e21ac3a0b7ba17e1d9c39efd53df3604b2da25c1b22c1fcfab7bffa7572c7da9e97a6949aa10732fc3ed66504e41e855b5d0b7b8caeca54c9adb691abf12abb5faf2e5d2da", 0x23d, 0x4000}, {&(0x7f0000010320)="00000000000000000000000000000000b0000000ffff000001004000000003000000000000000000000000000000000040000000000000000008000000000000080000000000000008000000000000001101040000000000ffffffff0000030046494c45300005000000000000000000010001004000010060010000000800000000000000000000030000000100000002000000000000000000000000000000100000006000000000001800000000004800000018000000801875c1344fd801801875c1344fd801801875c1344fd801801875c1344fd801060000000000000000000000000000000000000000010000000000000000000000000000000000003000000070000000000018000000020052000000180001000500000000000500801875c1344fd801801875c1344fd801801875c1344fd801801875c1344fd801002000000000000000200000000000000600000000000000080324004d00460054004d006900720072000000000000008000000048", 0x175, 0x47a0}, {&(0x7f0000000500)="000000000000000000000000000000000000000000000000000000000000020046494c45300005000000000000000000020001004000010060010000000800000000000000000000030000000200000002000000000000000000000000000000100000006000000000001800000000004800000018000000801875c1344fd801801875c1344fd801801875c1344fd801801875c1344fd801060000000000000000000000000000000000000000010000000000000000000000000000000000003000000070000000000018000000020052000000180001000500000000000500801875c1344fd801801875c1344fd801801875c1344fd801801875c1344fd801000004000000000000000400000000000600000000000000080324004c006f006700460069006c0065000000000000008000000048000000010040000000010000000000000000007f0000000000000040000000000000000000040000000000000004000000000000000400000000002280000302", 0x175, 0x4fe0}, {&(0x7f0000001140)="000000000000000000000000000000000000000000000000000000000000040046494c453000050000000000000000000400010040000100c8010000000800000000000000000000040000000400000002000000000000000000000000000000100000004800000000001800000000003000000018000000801875c1344fd801801875c1344fd801801875c1344fd801801875c1344fd801060000000000000000000000000000003000000070000000000018000000020052000000180001000500000000000500801875c1344fd801801875c1344fd801801875c1344fd801801875c1344fd8010010000000000000000a00000000000006000000000000000803240041007400740072004400650066000000000000005000000080000000000018000000030064000000180000000100048048000000540000000000000014000000020034000200000000001400890012000101000000000005120000000000180089001200010200000000000520000000200200000101000000000005120000000102000000000005200000002002000000000000800000004800000001004000000001000000000000000000010000000000000040000000000000000010000000000000000a000000000000000a00000000000021028c", 0x1db, 0x5fe0}, {&(0x7f0000001340)="000000000000000000000000000000000000000000000000000000000000020046494c45300005000000000000000000050001004000030008020000000800000000000000000000060000000500000003000000000000000000000000000000100000004800000000001800000000003000000018000000801875c1344fd801fc42f8c1344fd801fc42f8c1344fd801801875c1344fd801262000100000000000000000000000003000000060000000000018000000010044000000180001000500000000000500801875c1344fd801801875c1344fd801801875c1344fd801801875c1344fd80100000000000000000000000000000000060000100000000001032e00000000005000000048000000010040000000020000000000000000000200000000000000400000000000000000180000000000002c100000000000002c100000000000002103870000000000900000005800000000041800000003003800000020000000240049003300300030000000010000000010000002", 0x17d, 0x67a0}, {&(0x7f0000000d00)="000000000000000000000000000000000000000000000000000000000000030046494c45300005000000000000000000060001004000010058010000000800000000000000000000030000000600000002000000000000000000000000000000100000006000000000001800000000004800000018000000801875c1344fd801801875c1344fd801801875c1344fd801801875c1344fd801060000000000000000000000000000000000000000010000000000000000000000000000000000003000000068000000000018000000020050000000180001000500000000000500801875c1344fd801801875c1344fd801801875c1344fd801801875c1344fd801000800000000000080000000000000000600000000000000070324004200690074006d00610070008000000048000000010040000000010000000000000000000000000000000000400000000000000000080000000000008000000000000000800000000000000021018e", 0x16b, 0x6fe0}, {&(0x7f0000011280)="00000000000000000000000000000000000000000000000000000000000002", 0x1f, 0x7fe0}, {&(0x7f00000194a0)="10", 0x1, 0x7fff}, {&(0x7f0000000680)="000000000000000000000000000000000000000000000000000000000000020046494c453000050000000000000000000900010040000900080300000008000000000000000000000500000009007e0003000000000000000000000000000000100000006000000000001800000000004800000018000000801875c1344fd801801875c1344fd801801875c1344fd801801875c1344fd8010600002000000000000000000000000000000000010100000000000000000000000000000000000030000000680000000000180000000100500000001800cf3a0500000000000500801875c1344fd801801875c1344fd801801875c1344fd801801875c1344fd8010000000000000000000000000000000006000020000000000703240053006500630075007200650080afdfc691223d1c92ca8f0c249f285800000050000000010440000000020000000000000000008000000000000000480000000000000000080400000000007001040000000000700104000000000024005300440053002281008f0000000090000000e00000000004180000000300c00000002000000024005300440048000000000012000000001000000200000010000000b0000000b000000000000000180014000000000030000800000000005124b300010100005124b3000101000080000000000000007c0000004900490018001400000000003000080000000000a0ddde4202010000a0ddde42020100000001000000000000640000004900490018001400000003003000080000000000f01203f800010000f01203f80001000000000000000000007c000000490049000000000000000000100000000200000090000000c80000000004180000000400a800000020000000240053004900490000000000100000000010000002000000100000009800000098000000000000001400140000000000280004000000000000010000f01203f80001000000000000000000007c00000014001400000000002800040000000000010100005124b3000101000080000000000000007c0000001400140000000000280004000000000002010000a0ddde4202010000000100000000000064000000000002a66ff406806950b1b78d0d969262a0a9dc76ba08121380ae353d0fa2e6e0296b31d5392cd2add8aa1b95e63e208d8a6349bd5ddfcf2c906177358467e63f624ff874968c1adff1b7790352edc84325ad6f7a91cf9f45d000000000000000000000dccce87da54a6c3aa53a6fd801a368ea7796cd7be323776dd4fdf8286e65a38f7740512444943406", 0x3ab, 0x87e0}, {&(0x7f0000011800)="000000000000000000000000000000000000000000000000000000000000030046494c45300005000000000000f400000a00010040000100a0010000000800000000000000000000040000000a00000002000000000000000000000000000000100000006000000000001800000000004800000018000000801875c1344fd801801875c1344fd801801875c1344fd801801875c1344fd801060000000000000000000000000000000000000000010000000000000000000000000000000000003000000068000000000018000000030050000000180001000500000000000500801875c1344fd801801875c1344fd801801875c1344fd801801875c1344fd801000002000000000000000200000000000600000000000000070324005500700043006100730065008000000048000000010040000000010000000000000000003f000000000000004000000000000000000002000000000000000200000000000000020000000000214010", 0x16b, 0x8fe0}, {&(0x7f000003a4a0)="0000000000000000000000000000000000000000000000000000000000000400ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff", 0x20024, 0x1017e0}], 0x9000, &(0x7f0000000440)=ANY=[], 0xff) syz_mount_image$btrfs(&(0x7f0000000000), &(0x7f0000000100)='./file0\x00', 0x1002004, 0x34, &(0x7f0000000200)=[{&(0x7f0000011000)="104fbd63c0999926236bf44047f1379f5959aec2a59a421dabe0ae8c1082507110728f386baa48ac8c080b0b5bf8fd9200501006000000000000000000000001feaf326c3b5d43588bde9e065a8b80a801000000000000000700000000000000", 0x60, 0x1b}, {&(0x7f0000010000)="4269f9651b2449e2208babf6b80cf5c198a19f0605eaa33ac85fa699fc6e960410728f386baa48ac8c080b0b5bf8fd92000001000000000001000000000000005f42485266535f4d07000000000000000000500000000000001010000000000000000000000000000000000000000000000000010000000000d0000000000000060000000000000001000000000000000010000000100000001000000010000061000000040000000000000000000000000000000000000000000000c5010000000000000200000000010000000000000000000001000000000000720000000000001000000010000000100000000000000000000000000000000000000000000000000000000000000000585c50b36999488499985426484d35a610728f386baa48ac8c080b0b5bf8fd9200"/320, 0x140, 0x10000}, {&(0x7f0000010200)='\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\a\x00\x00\x00\x00\x00\x00\x00\a\x00'/32, 0x20, 0x10220}, {&(0x7f0000010300)="00000000000000000000000001000000000000e4000010000000000000004000000000000200000000000000000001000000000002000000000000000010000000100000001000000100000001000000000000000000100000000000585c50b36999488499985426484d35a600"/128, 0x80, 0x10320}, {&(0x7f0000010400)="000000000000000000000000105000000000000500000000000000001010000000000004000000000000000020500000000000050000000000000000005000000000000400000000000000007050000000000004000000000000000080500000000000040000000000000000000001000000000080000000000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f050000000000006000000000000000010100000000000040000000000000000b0500000000000060000000000000000d050000000000006000000000000000000510000000000060000000000000000605000000000000600000000000000000000010000000000d0000000000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000005000000000000700000000000000001010000000000004000000000000000010500000000000070000000000000000d050000000000006000000000000000000510000000000060000000000000000605000000000000600000000000000000000010000000000d00000000000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000005050000000000004000000000000000010100000000000040000000000000000605000000000000400000000000000000050000000000004000000000000000070500000000000040000000000000000805000000000000400000000000000000000010000000000800000000000000100"/640, 0x280, 0x10b20}, {&(0x7f0000010700)="7c21e1a2b3acb2387469f4c3dcf17fb37ef5f4b2d7b0626c177f51bfe46138f910728f386baa48ac8c080b0b5bf8fd9200001000000000000100000000000001feaf326c3b5d43588bde9e065a8b80a80300000000000000030000000000000004000000000100000000000000d80100000000000000390f0000620000000001000000000000e40000100000000000e90e0000500000000001000000000000e40000500000000000990e0000500000000001000000000000e40000690000000000490e00005000"/224, 0xe0, 0x100000}, {&(0x7f0000010800)="000000000000000000000000000000001900000000000200000000000000000001000000000005000000000000000000010000000100001000000100010001000000000000000000690000000000585c50b36999488499985426484d35a600001900000000000200000000000000000001000000000005000000000000000000010000000100001000000100010001000000000000000000500000000000585c50b36999488499985426484d35a600004000000000000200000000000000000001000000000002000000000000000010000000100000001000000100000001000000000000000000100000000000585c50b36999488499985426484d35a6010000000000000000000001000000000000720000000000001000000010000000100000000000000000000000000000000000000000000000000000000000000000585c50b36999488499985426484d35a610728f386baa48ac8c080b0b5bf8fd924dc532c89abb41c152e349ee2eac294e36ecc460bf2160318d007ed1a365653f10728f386baa48ac8c080b0b5bf8fd9200101000000000000100000000000001feaf326c3b5d43588bde9e065a8b80a80400000000000000030000000000000004000000000100000000000000d80100000000000000390f0000620000000001000000000000e40000100000000000e90e0000500000000001000000000000e40000500000000000990e0000500000000001000000000000e40000690000000000490e00005000"/576, 0x240, 0x100ea0}, {&(0x7f0000010b00)="000000000000000000000000000000001900000000000200000000000000000001000000000005000000000000000000010000000100001000000100010001000000000000000000690000000000585c50b36999488499985426484d35a600001900000000000200000000000000000001000000000005000000000000000000010000000100001000000100010001000000000000000000500000000000585c50b36999488499985426484d35a600004000000000000200000000000000000001000000000002000000000000000010000000100000001000000100000001000000000000000000100000000000585c50b36999488499985426484d35a6010000000000000000000001000000000000720000000000001000000010000000100000000000000000000000000000000000000000000000000000000000000000585c50b36999488499985426484d35a610728f386baa48ac8c080b0b5bf8fd923d8ac58ea0f6e35ed4063af3f0abdad94a11909415d6327f7b91b83581781f0510728f386baa48ac8c080b0b5bf8fd9200201000000000000000000000000001feaf326c3b5d43588bde9e065a8b80a80100000000000000030000000000000002000000000100000000000000d80100000000000000390f0000620000000001000000000000e40000100000000000e90e00005000"/512, 0x200, 0x101ea0}, {&(0x7f0000010d00)="000000000000000000000000000000004000000000000200000000000000000001000000000002000000000000000010000000100000001000000100000001000000000000000000100000000000585c50b36999488499985426484d35a6010000000000000000000001000000000000400000000000001000000010000000100000000000000000000000000000000000000000000000000000000000000000585c50b36999488499985426484d35a610728f386baa48ac8c080b0b5bf8fd927195a377b9c35072f592f5bb13dd4d230b0330f666cab857813b5f592b4eb79310728f386baa48ac8c080b0b5bf8fd9200301000000000000000000000000001feaf326c3b5d43588bde9e065a8b80a80100000000000000040000000000000001000000000100000000000000cc00001000000000006b0f0000300000000000", 0x140, 0x102f40}, {&(0x7f0000000700)="0000000000000000000000000000000003000000000000000001000000000099a359ec53ca130000001000000000000000400000000000feaf326c3b5d43588bde9e065a8b80a8af4d4af667c2e613e90500000000000000088003ac010631cf4f99a6b8c8e5f210728f386baa48ac8c080b0b5bf8fd92004010000000000000000000000000d57c527af186be249f01feaf326c3b5d43588bde9e065a8b80a8010000000000000005000000000000005696cfc76c3dd4a1b28dc9e7c1e922ac764aa88f51cad055223ea89b841bfbe81fb1328ccc6e610cefdd08c05fc8ad005a4e4df19e1dd49b37ee4ad1a4c4edfa8a16d9298bae5f3bdc6484f4b6", 0xfd, 0x103fc0}, {&(0x7f0000011100)="745d8cc7f1a5b36daaf2177c6eaa7bec59aa10fbd605ab22905f87ef8ab7eb3a10728f386baa48ac8c080b0b5bf8fd9200601000000000000100000000000001feaf326c3b5d43588bde9e065a8b80a8020000000000000002000000000000000a000000000000100000000000c00000400000000000830f0000180000000040100000000000a900000000000000006b0f0000180000000040100000000000b005000000000000006b0f0000000000000050100000000000a90000000000000000530f0000180000000050100000000000b00700000000000000530f0000000000000060100000000000a90000000000000000320f0000210000000070100000000000a90000000000000000110f0000210000000080100000000000a90000000000000000f00e0000210000000000500000000000a90000000000000000cf0e0000210000000000500000000000c00000190000000000b70e0000180000000000500000000000c00000190000000000d80e0000180000000000500000000000c000001900000000000b0f0000180000000050100000000000b007000000000000000b0f0000000000000000500000000000c00000190000000000f30e000018", 0x1c0, 0x106000}, {&(0x7f0000011300)="00000000000000000000000000000000000000000000000000000000001000000000000000010000000000000500000000000000010000000000000002000000000000000200000000000000b00100000000000000010000000000000002000000000000000200000000000000b00300000000000000010000000000000002000000000000000200000000000000b00400000000000000010000000000000002000000000000000200000000000000b00200000000000000010000000000000001000000000000000200000000000000010000000000000001000000000000000200000000000000005000000000000000010000000000000200000000000000bea92f84cb2769e88c1bfb106ee6f3c9336ed334272e3c22f9b9172fbc48615e10728f386baa48ac8c080b0b5bf8fd9200701000000000000100000000000001feaf326c3b5d43588bde9e065a8b80a80200000000000000040000000000000002000000000100000000000000cc00001000000000006b0f0000300000000100000000000000cc00005000000000003b0f00003000"/416, 0x1a0, 0x106f00}, {&(0x7f0000011500)="0300000000000000000100000000000000005000000000000000190000000000feaf326c3b5d43588bde9e065a8b80a80300000000000000000100000000000000001000000000000000400000000000feaf326c3b5d43588bde9e065a8b80a80f0dcb27620f93c61dfe5735ec4f4b9cc12cfe480144337afd5faf3a3e5bc53810728f386baa48ac8c080b0b5bf8fd9200801000000000000100000000000001feaf326c3b5d43588bde9e065a8b80a80200000000000000030000000000000003000000000100000000000000d80100000000000000390f0000620000000001000000000000e40000100000000000e90e0000500000000001000000000000e40000500000000000990e00005000"/288, 0x120, 0x107fa0}, {&(0x7f0000011700)="1900000000000200000000000000000001000000000005000000000000000000010000000100001000000100010001000000000000000000500000000000585c50b36999488499985426484d35a600004000000000000200000000000000000001000000000002000000000000000010000000100000001000000100000001000000000000000000100000000000585c50b36999488499985426484d35a6010000000000000000000001000000000000590000000000001000000010000000100000000000000000000000000000000000000000000000000000000000000000585c50b36999488499985426484d35a610728f386baa48ac8c080b0b5bf8fd92", 0x100, 0x108efc}, {&(0x7f0000011800)="6db2faa7ed3470e70331f743dcf6d021ccf4b1ad818cc8f48cff050358d9ec8010728f386baa48ac8c080b0b5bf8fd9200005000000000000100000000000001feaf326c3b5d43588bde9e065a8b80a8070000000000000001000000000000000a000000000200000000000000840000000000000000e40d0000b701000004000000000000008400000000000000002d0c0000b701000005000000000000000c06000000000000001c0c0000110000000500000000000000840000000000000000650a0000b70100000600000000000000010000000000000000c5090000a000000006000000000000000c0600000000000000b90900000c000000060000000000000054d2c2bf8d0000000094090000250000000700000000000000840000000000000000dd070000b7010000090000000000000084000000000000000026060000b7010000f7ffffffffffffff8400000000000000006f040000b701000000", 0x160, 0x500000}, {&(0x7f0000011a00)="0000000000000000000000000000000000000000040000000000000000010000000000000090500000000000000000000000000000100000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000400"/128, 0x80, 0x500560}, {&(0x7f0000011b00)="00000000000000000000000400000000000000000000000000000000a050000000000000000000000000000010000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000040000000000", 0x60, 0x500720}, {&(0x7f0000011c00)="000001000000000000000000000000000000030000000000000000100000000000000000000000000000010000000000000000000000ed410000000000000000", 0x40, 0x500840}, {&(0x7f0000011d00)="0000060000000000000000000000000000000060500000000000000000000000000000100000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000600"/96, 0x60, 0x5008e0}, {&(0x7f0000011e00)="00000000000000000000000000000000000000000000000000050000000000000084ffffffffffffffff0000000000000000000007000264656661756c74000000000000000002002e2e03000000000000000000000000000000000000000000000000100000000000000000000000000000010000000000000000000000ed41000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005cbc645f00000000000000005cbc645f00000000000000005cbc645f00000000000000005cbc645f000000000000000001000000000000000000000000000000030000000000000000100000000000000000000000000000010000000000000000000000ed410000000000000000000000000080ffffffff00"/320, 0x140, 0x5009e0}, {&(0x7f0000012000)="000000000000000000000600000000000000000100000000000000d050000000000000000000000000000030000000000000000000000000000000000000000000000100000000000000000000000000000000000000000001060000000000000082f6dc9922aa4f6499776c038d92ced8000000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000005dbc645f0000000020f1a80e5cbc645f00"/224, 0xe0, 0x500b60}, {&(0x7f0000012100)="000000000000000000070064656661756c7401000000000000000000000000000000030000000000000000100000000000000000000000000000010000000000000000000000ed4100"/96, 0x60, 0x500c80}, {&(0x7f0000012200)="000000000000000000000000000000000000060000000000000000000000000000000000510000000000000000000000000000100000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000600"/128, 0x80, 0x500d20}, {&(0x7f0000012300)="00000000000000000001000000000000000000000000000000030000000000000000100000000000000000000000000000010000000000000000000000ed4100", 0x40, 0x500e40}, {&(0x7f0000012400)="000000000000000000070000000000000000000000000000000010500000000000000000000000000000100000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000700000000000000", 0x60, 0x500ee0}, {&(0x7f0000012500)="48e59d4e802972949d6943f6ad6cc5d5bebea09a024ae5af0c5617fe0871c5ec10728f386baa48ac8c080b0b5bf8fd9200105000000000000100000000000001feaf326c3b5d43588bde9e065a8b80a8070000000000000002000000000000000e000000000000100000000000c00000400000000000830f0000180000000010100000000000a90000000000000000620f0000210000000000500000000000a90000000000000000410f0000210000000000500000000000c00000190000000000290f0000180000000010500000000000a90000000000000000080f0000210000000030500000000000a80030000000000000d30e0000350000000060500000000000a90000000000000000b20e0000210000000090500000000000a90000000000000000910e00002100000000a0500000000000a90000000000000000700e00002100000000c0500000000000a900000000000000004f0e00002100000000d0500000000000a901000000000000002e0e00002100000000e0500000000000a900000000000000000d0e0000210000000000510000000000a90000000000000000ec0d0000210000000000690000000000c00000190000000000d40d000018", 0x1c0, 0x501000}, {&(0x7f0000012700)="0000010000000000000500000000000000010000000000000006000000000000000200000000000000b00400000000000000010000000000000006000000000000000200000000000000b00500000000000000010000000000000006000000000000000200000000000000b00500000000000000010000000000000006000000000000000200000000000000b00500000000000000010000000000000004000000000000000200000000000000b00900000000000000010000000000000004000000000000000200000000000000b0f7ffffffffffffff010000000000000006000000000000000200000000000000b00700000000000000010000000000000006000000000000000100000000000000b205000000000000000501000000000000000000000000000001000000010000000000000007000000000000000200000000000000b0020000000000000000c000000000000000010000000000000500000000000000010000000000000007000000000000000200000000000000b00100000000000000010000000000000004000000000000000200000000000000b003000000000000000010000000000000000100000000000002000000000000005899519175eec0d0f4e97e7b684d27bb7b8d9ea6c09b008f532f3648af7aeef410728f386baa48ac8c080b0b5bf8fd9200205000000000000100000000000001feaf326c3b5d43588bde9e065a8b80a8050000000000000002000000000000000b000000000000100000000000c00000400000000000830f0000180000000010100000000000a90000000000000000620f0000210000000000500000000000a90000000000000000410f0000210000000000500000000000c00000190000000000290f0000180000000010500000000000a90000000000000000080f0000210000000020500000000000a90000000000000000e70e0000210000000070500000000000a90000000000000000c60e0000210000000080500000000000a90000000000000000a50e0000210000000090500000000000a90000000000000000840e00002100000000a0500000000000a90000000000000000630e0000210000000000690000000000c000001900000000004b0e0000180000000000690000000000c000001900000000004b0e0000180000000000690000000000c000001900000000002a0e0000180000000000500000000000c00000190000000000f30e000018", 0x380, 0x501e40}, {&(0x7f0000012b00)="0000000000000000000000000000000000000000000000010000000000000500000000000000010000000000000004000000000000000000010000000000000500000000000000010000000000000004000000000000000000010000000000000500000000000000010000000000000004000000000000000200000000000000b00900000000000000010000000000000004000000000000000200000000000000b0f7ffffffffffffff010000000000000004000000000000000200000000000000b00700000000000000010000000000000004000000000000000200000000000000b00400000000000000010000000000000005000000000000000200000000000000b00200000000000000010000000000000005000000000000000200000000000000b00100000000000000007000000000000000010000000000000500000000000000010000000000000004000000000000000200000000000000b00500000000000000010000000000000004000000000000000200000000000000b00300000000000000001000000000000000010000000000000200000000000000", 0x1a0, 0x502e60}, {&(0x7f0000012d00)="d1fd288d6da93056690fba437a87a8abd55a920718151512a0d0ccbba390f00d10728f386baa48ac8c080b0b5bf8fd9200605000000000000100000000000001feaf326c3b5d43588bde9e065a8b80a8060000000000000007000000000000000100000000f6ffffffffffffff8000305000000000003b0f0000600000000000", 0x80, 0x506000}, {&(0x7f0000012e00)="ad7facb2586fc6e966c004d7d1d16b024f5805ff7cb47c7a85dabd8b48892ca7ad7facb2586fc6e966c004d7d1d16b024f5805ff7cb47c7a85dabd8b48892ca7ad7facb2586fc6e966c004d7d1d16b024f5805ff7cb47c7a85dabd8b48892ca7447913ef673394db702dace49efbaf08f155b88408e5eedcac138974200e844c10728f386baa48ac8c080b0b5bf8fd9200705000000000000100000000000001feaf326c3b5d43588bde9e065a8b80a80400000000000000040000000000000003000000000100000000000000cc00001000000000006b0f0000300000000100000000000000cc00005000000000003b0f0000300000000100000000000000cc00006900000000000b0f00003000"/288, 0x120, 0x506fa0}, {&(0x7f0000013000)="000000000000000000000000000000000300000000000000000100000000000000006900000000000000190000000000feaf326c3b5d43588bde9e065a8b80a80300000000000000000100000000000000005000000000000000190000000000feaf326c3b5d43588bde9e065a8b80a80300000000000000000100000000000000001000000000000000400000000000feaf326c3b5d43588bde9e065a8b80a8d68671688d9029647c79ad4bf42be1306aa04a2b987e62d18f3af37be47a39ac10728f386baa48ac8c080b0b5bf8fd9200805000000000000100000000000001feaf326c3b5d43588bde9e065a8b80a804000000000000000700000000000000", 0x100, 0x507f60}, {&(0x7f0000013100)="280446fba903676714a199208da7bbbcc64014cf0f8da172f7c43601835a1b5c10728f386baa48ac8c080b0b5bf8fd9200905000000000000100000000000001feaf326c3b5d43588bde9e065a8b80a80400000000000000f7ffffffffffffff02000000000001000000000000010000000000000000fb0e0000a000000000010000000000000c0001000000000000ef0e00000c00"/160, 0xa0, 0x509000}, {&(0x7f0000013200)="0000000000000000000000000000000000000000000000000000000002002e2e04000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000ed41000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005cbc645f00000000000000005cbc645f00000000000000005cbc645f00000000000000000000000000000000000000007e341445892f598b6f54607c802b8c8830d38fb814020f173e9c2a07cfb297f110728f386baa48ac8c080b0b5bf8fd9200a05000000000000100000000000001feaf326c3b5d43588bde9e065a8b80a804000000000000000900000000000000010000000082f6dc9922aa4f64fb99776c038d92ced8930f0000080000000000", 0x140, 0x509f40}, {&(0x7f0000013400)="00000000000000000000000000000000000000000000000005000000000000003dc675ab2d33d4fe834e8ea2be9e258bce44eeea134d888431f4962e5ac71a7d10728f386baa48ac8c080b0b5bf8fd9200b05000000000000100000000000001feaf326c3b5d43588bde9e065a8b80a8060000000000000002000000000000000e000000000000100000000000c00000400000000000830f0000180000000010100000000000a90000000000000000620f0000210000000000500000000000c000001900000000004a0f0000180000000030500000000000a80030000000000000150f0000350000000060500000000000a90000000000000000f40e0000210000000090500000000000a90000000000000000d30e00002100000000a0500000000000a90000000000000000b20e00002100000000b0500000000000a90000000000000000910e00002100000000c0500000000000a90000000000000000700e00002100000000d0500000000000a901000000000000004f0e00002100000000e0500000000000a900000000000000002e0e00002100000000f0500000000000a900000000000000000d0e0000210000000000510000000000a90000000000000000ec0d0000210000000000690000000000c00000190000000000d40d000018", 0x1e0, 0x50afe0}, {&(0x7f0000013600)="0000010000000000000500000000000000010000000000000006000000000000000200000000000000b00400000000000000010000000000000006000000000000000200000000000000b00100000000000000010000000000000006000000000000000200000000000000b00500000000000000010000000000000006000000000000000200000000000000b00500000000000000010000000000000006000000000000000200000000000000b00500000000000000010000000000000006000000000000000200000000000000b00200000000000000010000000000000004000000000000000200000000000000b00900000000000000010000000000000004000000000000000200000000000000b0f7ffffffffffffff010000000000000006000000000000000200000000000000b00700000000000000010000000000000006000000000000000100000000000000b20500000000000000050100000000000000000000000000000100000000c000000000000000010000000000000500000000000000010000000000000004000000000000000200000000000000b00300000000000000001000000000000000010000000000000200000000000000291bbaf3ff2ffec36c3d0dee0f69a12c2e2d9e73fd02651c62cab08b7e32a08c10728f386baa48ac8c080b0b5bf8fd9200c05000000000000100000000000001feaf326c3b5d43588bde9e065a8b80a80600000000000000050000000000000012000000000001000000000000010000000000000000fb0e0000a000000000010000000000000c0001000000000000ef0e00000c0000000001000000000000544bae790400000000cc0e0000230000000001000000000000546b826b1100000000a50e000027000000000100000000000054bf5d291700000000820e000023000000000100000000000054bcde42e5000000005f0e000023000000000100000000000054482d12f6000000003c0e0000230000000001000000000000600200000000000000190e0000230000000001000000000000600300000000000000f60d0000230000000001000000000000600400000000000000d30d0000230000000001000000000000600500000000000000b00d0000230000000001000000000000600600000000000000890d0000270000000101000000000000010000000000000000e90c0000a000000001010000000000000c0001000000000000da0c00000f0000000101000000000000544bae790400000000b70c000023000000010100000000000054482d12f600000000940c0000230000000101000000000000600200000000000000710c00002300000001010000000000006003000000000000004e0c00002300"/1024, 0x400, 0x50be40}, {&(0x7f0000013a00)="0000000000000000000000000000000000000003010000000000000100000000000000000600000000000000000005000766696c653102010000000000000100000000000000000600000000000000000005000166696c653003010000000000000100000000000000000600000000000000000005000766696c653102010000000000000100000000000000000600000000000000000005000166696c65300200000000000000050066696c653006000000000000000600000000000000140000000000000000000000000000000000000000000000010000000000000000000000ed41000000000000000000000000000000000000080000000000000000000000000000000000000000000000000000000000000000000000000000005dbc645f00000000cab5280d5dbc645f00000000cab5280d5dbc645f00000000cab5280d5dbc645f00000000cab5280d06010000000000000100000000000000000600000000000000000009000166696c652e636f6c6405010000000000000100000000000000000600000000000000000005000166696c653305010000000000000100000000000000000600000000000000000005000166696c653204010000000000000100000000000000000600000000000000000005000166696c653101010000000000000100000000000000000600000000000000000005000266696c653004010000000000000100000000000000000600000000000000000005000166696c653105010000000000000100000000000000000600000000000000000005000166696c653205010000000000000100000000000000000600000000000000000005000166696c653306010000000000000100000000000000000600000000000000000009000166696c652e636f6c6401010000000000000100000000000000000600000000000000000005000266696c6530000000000000000002002e2e030000000000000006000000000000003a0000000000000000100000000000000000000000000000010000000000000000000000ed41000000000000000000000000000000000000050000000000000000000000000000000000000000000000000000000000000000000000000000005cbc645f00000000000000005dbc645f00000000e6be650d5dbc645f00000000e6be650d5cbc645f00000000000000000654f9895dbe2f86073d7756fcf442ec664accfa8c145419b062e95f09f6416c10728f386baa48ac8c080b0b5bf8fd9200d05000000000000100000000000001feaf326c3b5d43588bde9e065a8b80a8060000000000000005000000000000000200000001000100000000000001000000000000000000c05000000000000600000000000000020100000000000001000000000000000000e050000000000006", 0x400, 0x50cca0}, {&(0x7f0000013e00)="04a1ef51571117a553e54f9a86db65f23a8e709055e86c535f82b3795648ed2b10728f386baa48ac8c080b0b5bf8fd9200e05000000000000100000000000001feaf326c3b5d43588bde9e065a8b80a80600000000000000050000000000000011000000000201000000000000010000000000000000fb0e0000a000000002010000000000000c0101000000000000ec0e00000f00000002010000000000006c0000000000000000bd0a00002f04000003010000000000000100000000000000001d0a0000a000000003010000000000000c01010000000000000e0a00000f00000003010000000000006c0000000000000000d30900003b000000040100000000000001000000000000000033090000a000000004010000000000000c0001000000000000240900000f00000004010000000000001822a8f12600000000f50800002f000000040100000000000018d65ba13500000000c60800002f00000004010000000000006c0000000000000000a70800001f000000050100000000000001000000000000000007080000a000000005010000000000000c0001000000000000e90700001e00000005010000000000006c0000000000000000b407000035000000060100000000000001000000000000000014070000a000000006010000000000000c0001000000000000010700001300000006010000000000006c0000000000000000880600007900"/544, 0x220, 0x50e000}, {&(0x7f0000014100)="0000000000000000000000000006000000000000006400000000000000000000000073797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c6572730600000000000000090066696c652e636f6c6406000000000000000600000000000000640000000000000064000000000000000000000000000000010000000000000000000000ed81000000000000000000000000000000000000050000000000000000000000000000000000000000000000000000000000000000000000000000005dbc645f00000000e6be650d5dbc645f00000000e6be650d5dbc645f00000000e6be650d5dbc645f00000000e6be650d06000000000000000030000000000000000000000100305000000000000030000000000000000000000000000000300000000000000400000000000000050066696c65320500000000000000050066696c653306000000000000000600000000000000282300000000000000300000000000000000000000000000020000000000000000000000ed81000000000000000000000000000000000000050000000000000000000000000000000000000000000000000000000000000000000000000000005dbc645f00000000e6be650d5dbc645f00000000e6be650d5dbc645f00000000e6be650d5dbc645f00000000e6be650d06000000000000000a00000000000000000000000073797a6b616c6c6572730000000000000000000000000000000000060000000000000006000b0008757365722e7861747472317861747472310000000000000000000000000000000000060000000000000006000b0008757365722e7861747472327861747472320300000000000000050066696c6531060000000000000006000000000000000a000000000000000a000000000000000000000000000000010000000000000000000000ed81000000000000000000000000000000000000080000000000000000000000000000000000000000000000000000000000000000000000000000005dbc645f00000000cab5280d5dbc645f00000000e6be650d5dbc645f00000000e6be650d5dbc645f00000000cab5280d0600000000000000260000000000000000000000002f746d702f73797a2d696d61676567656e3537303930383734312f66696c65302f66696c65300300000000000000050066696c653106000000000000000600000000000000260000000000000026000000000000000000000000000000010000000000000000000000ffa1000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000000000000000000005dbc645f00000000cab5280d5dbc645f00000000cab5280d5dbc645f00000000cab5280d5dbc645f00000000cab5280d06000000000000001a04000000000000000000000073797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c0200000000000000050066696c6530060000000000000006000000000000001a040000000000001a040000000000000000000000000000010000000000000000000000ed81000000000000000000000000000000000000080000000000000000000000000000000000000000000000000000000000000000000000000000005dbc645f00000000cab5280d5dbc645f00000000cab5280d5dbc645f00000000cab5280d5dbc645f00000000cab5280d9a9fc89e99236eec346f6d2afc04843693b23119aed4f7c59071ba7e49c5092e10728f386baa48ac8c080b0b5bf8fd9200f05000000000000100000000000001feaf326c3b5d43588bde9e065a8b80a8060000000000000001000000000000000a000000000200000000000000840000000000000000e40d0000b701000004000000000000008400000000000000002d0c0000b701000005000000000000000c06000000000000001c0c0000110000000500000000000000840000000000000000650a0000b70100000600000000000000010000000000000000c5090000a000000006000000000000000c0600000000000000b90900000c000000060000000000000054d2c2bf8d0000000094090000250000000700000000000000840000000000000000dd070000b7010000090000000000000084000000000000000026060000b7010000f7ffffffffffffff8400000000000000006f040000b701000000", 0xa80, 0x50e6e0}, {&(0x7f0000014c00)="0000000000000000000000000000000000000000040000000000000000010000000000000090500000000000000000000000000000100000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000400"/128, 0x80, 0x50f560}, {&(0x7f0000014d00)="00000000000000000000000400000000000000000000000000000000a050000000000000000000000000000010000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000040000000000", 0x60, 0x50f720}, {&(0x7f0000014e00)="000001000000000000000000000000000000030000000000000000100000000000000000000000000000010000000000000000000000ed410000000000000000", 0x40, 0x50f840}, {&(0x7f0000014f00)="0000060000000000000000000000000000000060500000000000000000000000000000100000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000600"/96, 0x60, 0x50f8e0}, {&(0x7f0000015000)="00000000000000000000000000000000000000000000000000050000000000000084ffffffffffffffff0000000000000000000007000264656661756c74000000000000000002002e2e03000000000000000000000000000000000000000000000000100000000000000000000000000000010000000000000000000000ed41000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005cbc645f00000000000000005cbc645f00000000000000005cbc645f00000000000000005cbc645f000000000000000001000000000000000000000000000000030000000000000000100000000000000000000000000000010000000000000000000000ed410000000000000000000000000080ffffffff00"/320, 0x140, 0x50f9e0}, {&(0x7f0000015200)="000000000000000000000600000000000000000100000000000000d050000000000000000000000000000030000000000000000000000000000000000000000000000100000000000000000000000000000000000000000001060000000000000082f6dc9922aa4f6499776c038d92ced8000000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000005dbc645f0000000020f1a80e5cbc645f00"/224, 0xe0, 0x50fb60}, {&(0x7f0000015300)="000000000000000000070064656661756c7401000000000000000000000000000000030000000000000000100000000000000000000000000000010000000000000000000000ed4100"/96, 0x60, 0x50fc80}, {&(0x7f0000015400)="000000000000000000000000000000000000060000000000000000000000000000000000510000000000000000000000000000100000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000600"/128, 0x80, 0x50fd20}, {&(0x7f0000015500)="00000000000000000001000000000000000000000000000000030000000000000000100000000000000000000000000000010000000000000000000000ed4100", 0x40, 0x50fe40}, {&(0x7f0000000080)="0000000000000000000600000000000000000000000000000000b05000000000000000000000000000001000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000006000000000fddd23eb25bd83b9be5ad6a0000", 0x6b, 0x50fee0}, {&(0x7f0000015700)="abbf70913dd77404e1610f7ce2992624cd942ced68b392f6892c965f400ef26410728f386baa48ac8c080b0b5bf8fd9200005100000000000100000000000001feaf326c3b5d43588bde9e065a8b80a80600000000000000040000000000000004000000000000000000000000f90100000000000000730f0000280000000100000000000000cc0000100000000000430f0000300000000100000000000000cc0000500000000000130f0000300000000100000000000000cc0000690000000000e30e00003000"/224, 0xe0, 0x510000}, {&(0x7f0000015800)="00000000000000000300000000000000000100000000000000006900000000000000190000000000feaf326c3b5d43588bde9e065a8b80a80300000000000000000100000000000000005000000000000000190000000000feaf326c3b5d43588bde9e065a8b80a80300000000000000000100000000000000001000000000000000400000000000feaf326c3b5d43588bde9e065a8b80a80000000000000000", 0xa0, 0x510f40}, {&(0x7f0000015900)="a65d691095e02ca7c1d0843d021082f7c71fbc88a7499a6e72264990ef73a8ee10728f386baa48ac8c080b0b5bf8fd9200006900000000000100000000000001feaf326c3b5d43588bde9e065a8b80a8060000000000000005000000000000001c000000000001000000000000010000000000000000fb0e0000a000000000010000000000000c0001000000000000ef0e00000c0000000001000000000000544bae790400000000cc0e0000230000000001000000000000546b826b1100000000a50e000027000000000100000000000054bf5d291700000000820e000023000000000100000000000054bcde42e5000000005f0e000023000000000100000000000054482d12f6000000003c0e00002300000001010000000000000100000000000000009c0d0000a000000001010000000000000c00010000000000008d0d00000f0000000101000000000000544bae7904000000006a0d000023000000010100000000000054482d12f600000000470d0000230000000201000000000000010000000000000000a70c0000a000000002010000000000000c0101000000000000980c00000f00000002010000000000006c0000000000000000690800002f0400000301000000000000010000000000000000c9070000a000000003010000000000000c0101000000000000ba0700000f00000003010000000000006c00000000000000007f0700003b0000000401000000000000010000000000000000df060000a000000004010000000000000c0001000000000000d00600000f00000004010000000000001822a8f12600000000a10600002f000000040100000000000018d65ba13500000000720600002f00000004010000000000006c0000000000000000530600001f0000000501000000000000010000000000000000b3050000a000000005010000000000000c0001000000000000950500001e00000005010000000000006c000000000000000060050000350000000601000000000000010000000000000000c0040000a000000006010000000000000c0001000000000000ad0400001300000006010000000000006c000000000000000034040000790000", 0x320, 0x690000}, {&(0x7f0000015d00)="0000000000000000000000000000000000000000000000000006000000000000006400000000000000000000000073797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c6572730600000000000000090066696c652e636f6c6406000000000000000600000000000000000000000000000000000000000000000000000000000000010000000000000000000000ff81000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000000000000000000005dbc645f00000000e6be650d5dbc645f00000000e6be650d5dbc645f00000000e6be650d5dbc645f00000000e6be650d06000000000000000030000000000000000000000100305000000000000030000000000000000000000000000000300000000000000400000000000000050066696c65320500000000000000050066696c653306000000000000000600000000000000000000000000000000000000000000000000000000000000010000000000000000000000ff81000000000000000000000000000000000000030000000000000000000000000000000000000000000000000000000000000000000000000000005dbc645f00000000e6be650d5dbc645f00000000e6be650d5dbc645f00000000e6be650d5dbc645f00000000e6be650d06000000000000000a00000000000000000000000073797a6b616c6c6572730000000000000000000000000000000000060000000000000006000b0008757365722e7861747472317861747472310000000000000000000000000000000000060000000000000006000b0008757365722e7861747472327861747472320300000000000000050066696c653106000000000000000600000000000000000000000000000000000000000000000000000000000000010000000000000000000000ff81000000000000000000000000000000000000050000000000000000000000000000000000000000000000000000000000000000000000000000005dbc645f00000000cab5280d5dbc645f00000000cab5280d5dbc645f00000000cab5280d5dbc645f00000000cab5280d0600000000000000260000000000000000000000002f746d702f73797a2d696d61676567656e3537303930383734312f66696c65302f66696c65300300000000000000050066696c653106000000000000000600000000000000000000000000000000000000000000000000000000000000010000000000000000000000ffa1000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000000000000000000005dbc645f00000000cab5280d5dbc645f00000000cab5280d5dbc645f00000000cab5280d5dbc645f00000000cab5280d06000000000000001a04000000000000000000000073797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c0200000000000000050066696c653006000000000000000600000000000000000000000000000000000000000000000000000000000000010000000000000000000000ff81000000000000000000000000000000000000070000000000000000000000000000000000000000000000000000000000000000000000000000005dbc645f00000000cab5280d5dbc645f00000000cab5280d5dbc645f00000000cab5280d5dbc645f00000000cab5280d03010000000000000100000000000000000600000000000000000005000766696c653102010000000000000100000000000000000600000000000000000005000166696c65300200000000000000050066696c653006000000000000000600000000000000000000000000000000000000000000000000000000000000010000000000000000000000ff41000000000000000000000000000000000000060000000000000000000000000000000000000000000000000000000000000000000000000000005dbc645f00000000cab5280d5dbc645f00000000cab5280d5dbc645f00000000cab5280d5dbc645f00000000cab5280d04010000000000000100000000000000000600000000000000000005000166696c653105010000000000000100000000000000000600000000000000000005000166696c653205010000000000000100000000000000000600000000000000000005000166696c653306010000000000000100000000000000000600000000000000000009000166696c652e636f6c6401010000000000000100000000000000000600000000000000000005000266696c6530000000000000000002002e2e03000000000000000000000000000000000000000000000000100000000000000000000000000000010000000000000000000000ed41000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005cbc645f00000000000000005cbc645f00000000000000005cbc645f00000000000000005cbc645f0000000000000000", 0xb80, 0x690480}], 0x0, &(0x7f00000001c0)=ANY=[@ANYBLOB="6e2f73706163655f632f8744debb44"], 0x0) r2 = syz_open_procfs(0xffffffffffffffff, &(0x7f0000001100)='fdinfo/4\x00') ioctl$VIDIOC_ENUMAUDOUT(r1, 0xc0345642, &(0x7f0000000a40)={0xf293, "72f75d591adfab2c502471b267d2f31107c8a03e8fc58301e6eff38dd38f2588", 0x2}) pread64(r2, &(0x7f0000002140)=""/17, 0x11, 0x0) 00:02:59 executing program 5: mkdirat(0xffffffffffffff9c, &(0x7f0000000000)='./file0\x00', 0x0) (async) mkdirat(0xffffffffffffff9c, &(0x7f0000000100)='./file1\x00', 0x0) (async) mkdirat(0xffffffffffffff9c, &(0x7f0000000140)='./file1\x00', 0x1c0) (async, rerun: 32) r0 = syz_open_procfs(0x0, &(0x7f0000000040)='attr/exec\x00') (rerun: 32) write$sysctl(r0, 0x0, 0x0) (async) renameat2(r0, &(0x7f0000000240)='./file1\x00', 0xffffffffffffff9c, &(0x7f0000000280)='./file0\x00', 0x0) (async, rerun: 64) r1 = syz_open_procfs(0x0, &(0x7f0000000040)='attr/exec\x00') (rerun: 64) write$sysctl(r1, 0x0, 0x0) (async) mount$overlay(0x0, &(0x7f0000000200)='./bus\x00', &(0x7f0000000040), 0x24, &(0x7f00000000c0)=ANY=[@ANYRES16=r1]) (async) mount$fuse(0x0, &(0x7f0000000180)='./bus\x00', 0x0, 0x200025, 0x0) r2 = syz_open_dev$vivid(&(0x7f0000000080), 0x0, 0x2) ioctl$F2FS_IOC_GARBAGE_COLLECT(r2, 0x4004f506, &(0x7f00000001c0)) 00:02:59 executing program 1: r0 = socket$packet(0x11, 0x3, 0x300) setsockopt$packet_int(r0, 0x107, 0xf, &(0x7f0000006ffc)=0x4000000000000200, 0xe50fb6c50bc849c9) setsockopt$sock_int(r0, 0x1, 0xc, &(0x7f00000000c0)=0x800, 0x4) r1 = socket$nl_generic(0x10, 0x3, 0x10) ioctl$sock_SIOCGIFINDEX(r1, 0x8933, &(0x7f0000000000)={'macvlan0\x00', 0x0}) r3 = syz_open_procfs(0x0, &(0x7f0000000040)='attr/exec\x00') write$sysctl(r3, 0x0, 0x0) r4 = syz_open_procfs(0x0, &(0x7f0000000040)='attr/exec\x00') write$sysctl(r4, 0x0, 0x0) setsockopt$packet_int(r4, 0x107, 0xb, &(0x7f0000000100), 0x4) setsockopt$sock_attach_bpf(r3, 0x1, 0x32, &(0x7f0000000080), 0x4) bind$packet(r0, &(0x7f0000000040)={0x11, 0x0, r2, 0x1, 0x0, 0x6, @local}, 0x14) sendto$inet6(r0, &(0x7f0000000280)="0403092cadf7480401020200c52cf7c25975e010b02f0800eb2b2ff0dac8897c6b112002faffffff3066090cb600c5471d130a66321a54e7df305f80a88161b6fd8f24286a57c3feffff", 0xfc13, 0x800, 0x0, 0x2f) socket$packet(0x11, 0x3, 0x300) (async) setsockopt$packet_int(r0, 0x107, 0xf, &(0x7f0000006ffc)=0x4000000000000200, 0xe50fb6c50bc849c9) (async) setsockopt$sock_int(r0, 0x1, 0xc, &(0x7f00000000c0)=0x800, 0x4) (async) socket$nl_generic(0x10, 0x3, 0x10) (async) ioctl$sock_SIOCGIFINDEX(r1, 0x8933, &(0x7f0000000000)={'macvlan0\x00'}) (async) syz_open_procfs(0x0, &(0x7f0000000040)='attr/exec\x00') (async) write$sysctl(r3, 0x0, 0x0) (async) syz_open_procfs(0x0, &(0x7f0000000040)='attr/exec\x00') (async) write$sysctl(r4, 0x0, 0x0) (async) setsockopt$packet_int(r4, 0x107, 0xb, &(0x7f0000000100), 0x4) (async) setsockopt$sock_attach_bpf(r3, 0x1, 0x32, &(0x7f0000000080), 0x4) (async) bind$packet(r0, &(0x7f0000000040)={0x11, 0x0, r2, 0x1, 0x0, 0x6, @local}, 0x14) (async) sendto$inet6(r0, &(0x7f0000000280)="0403092cadf7480401020200c52cf7c25975e010b02f0800eb2b2ff0dac8897c6b112002faffffff3066090cb600c5471d130a66321a54e7df305f80a88161b6fd8f24286a57c3feffff", 0xfc13, 0x800, 0x0, 0x2f) (async) 00:02:59 executing program 5: mkdirat(0xffffffffffffff9c, &(0x7f0000000000)='./file0\x00', 0x0) mkdirat(0xffffffffffffff9c, &(0x7f0000000100)='./file1\x00', 0x0) mkdirat(0xffffffffffffff9c, &(0x7f0000000140)='./file1\x00', 0x1c0) r0 = syz_open_procfs(0x0, &(0x7f0000000040)='attr/exec\x00') write$sysctl(r0, 0x0, 0x0) renameat2(r0, &(0x7f0000000240)='./file1\x00', 0xffffffffffffff9c, &(0x7f0000000280)='./file0\x00', 0x0) r1 = syz_open_procfs(0x0, &(0x7f0000000040)='attr/exec\x00') write$sysctl(r1, 0x0, 0x0) mount$overlay(0x0, &(0x7f0000000200)='./bus\x00', &(0x7f0000000040), 0x24, &(0x7f00000000c0)=ANY=[@ANYRES16=r1]) mount$fuse(0x0, &(0x7f0000000180)='./bus\x00', 0x0, 0x200025, 0x0) r2 = syz_open_dev$vivid(&(0x7f0000000080), 0x0, 0x2) ioctl$F2FS_IOC_GARBAGE_COLLECT(r2, 0x4004f506, &(0x7f00000001c0)) mkdirat(0xffffffffffffff9c, &(0x7f0000000000)='./file0\x00', 0x0) (async) mkdirat(0xffffffffffffff9c, &(0x7f0000000100)='./file1\x00', 0x0) (async) mkdirat(0xffffffffffffff9c, &(0x7f0000000140)='./file1\x00', 0x1c0) (async) syz_open_procfs(0x0, &(0x7f0000000040)='attr/exec\x00') (async) write$sysctl(r0, 0x0, 0x0) (async) renameat2(r0, &(0x7f0000000240)='./file1\x00', 0xffffffffffffff9c, &(0x7f0000000280)='./file0\x00', 0x0) (async) syz_open_procfs(0x0, &(0x7f0000000040)='attr/exec\x00') (async) write$sysctl(r1, 0x0, 0x0) (async) mount$overlay(0x0, &(0x7f0000000200)='./bus\x00', &(0x7f0000000040), 0x24, &(0x7f00000000c0)=ANY=[@ANYRES16=r1]) (async) mount$fuse(0x0, &(0x7f0000000180)='./bus\x00', 0x0, 0x200025, 0x0) (async) syz_open_dev$vivid(&(0x7f0000000080), 0x0, 0x2) (async) ioctl$F2FS_IOC_GARBAGE_COLLECT(r2, 0x4004f506, &(0x7f00000001c0)) (async) 00:03:00 executing program 3: r0 = socket$inet_tcp(0x2, 0x1, 0x0) bind$inet(r0, &(0x7f0000000100)={0x2, 0x4e20, @multicast2}, 0x62) setsockopt$inet_tcp_TCP_CONGESTION(r0, 0x6, 0xd, &(0x7f00000000c0)='htcp\x00', 0x5) setsockopt$inet_tcp_int(r0, 0x6, 0x2, &(0x7f0000000080), 0x4) r1 = openat(0xffffffffffffffff, &(0x7f00000002c0)='/proc/self/exe\x00', 0x0, 0x0) r2 = syz_open_procfs(0x0, &(0x7f0000000040)='attr/exec\x00') write$sysctl(r2, 0x0, 0x0) r3 = syz_open_procfs(0x0, &(0x7f0000000040)='attr/exec\x00') write$sysctl(r3, 0x0, 0x0) sendfile(r2, r3, &(0x7f0000000000)=0x6, 0x2) setsockopt$SO_ATTACH_FILTER(r0, 0x1, 0x1a, &(0x7f0000000300)={0x1, &(0x7f00000001c0)=[{0x6, 0x0, 0x0, 0x3654}]}, 0x10) connect$inet(r0, &(0x7f0000000180)={0x2, 0x4e20, @loopback}, 0x10) sendfile(r0, r1, 0x0, 0x101000011) recvmsg(r0, &(0x7f0000000580)={0x0, 0x41, &(0x7f0000000500)=[{&(0x7f0000000740)=""/4084, 0xfffffe1f}], 0x6, 0x0, 0xfffffffffffffcc9}, 0x700) 00:03:00 executing program 4: prlimit64(0x0, 0xe, &(0x7f0000000140)={0x8, 0x8b}, 0x0) (async) sched_setscheduler(0x0, 0x2, &(0x7f0000000080)=0x6) sched_setaffinity(0x0, 0x8, &(0x7f00000000c0)=0x5) (async) r0 = getpid() sched_setscheduler(r0, 0x1, &(0x7f0000001700)=0x4) (async) ptrace$PTRACE_SECCOMP_GET_FILTER(0x420c, 0x0, 0xfffffffffffffffc, &(0x7f0000000100)=""/36) socketpair$unix(0x1, 0x2, 0x0, &(0x7f0000000200)={0xffffffffffffffff, 0xffffffffffffffff}) getrlimit(0x8, 0x0) (async, rerun: 32) getpid() (async, rerun: 32) getrlimit(0xb, &(0x7f00000001c0)) (async, rerun: 64) connect$unix(r1, &(0x7f000057eff8)=@abs, 0x6e) (async, rerun: 64) sendmmsg$unix(r2, &(0x7f00000bd000), 0x318, 0x0) (async) recvmmsg(r1, &(0x7f00000000c0), 0x10106, 0x2, 0x0) (async) sched_setattr(0x0, &(0x7f0000000040)={0x38}, 0x0) (async) syz_clone3(&(0x7f0000000a00)={0x40b86000, 0x0, 0x0, 0x0, {}, 0x0, 0x0, 0x0, 0x0}, 0x58) bpf$BPF_RAW_TRACEPOINT_OPEN(0x11, &(0x7f0000000080)={&(0x7f0000000640)='tegra_dma_isr\x00'}, 0x10) (async) bpf$MAP_CREATE(0x100000000000000, &(0x7f0000000140)=@base={0xa, 0x16, 0x8, 0x7f}, 0x48) bpf$BPF_PROG_RAW_TRACEPOINT_LOAD(0x5, &(0x7f0000000440)={0x5, 0xa, &(0x7f0000000340)=ANY=[@ANYRES64=r1, @ANYRES8, @ANYRES16=r0], &(0x7f0000000000)='GPL\x00', 0x4, 0xfe, &(0x7f0000000240)=""/254, 0x40f00, 0x0, '\x00', 0x0, 0x0, 0xffffffffffffffff, 0x8, 0x0, 0xffffffffffffffa5, 0x10, 0x0}, 0x80) signalfd4(r2, 0x0, 0x0, 0x0) (async) bpf$MAP_CREATE(0x0, &(0x7f0000000000)=@base={0x6, 0x4, 0x7fff, 0x13f, 0x0, 0x1}, 0x48) 00:03:00 executing program 5: syz_mount_image$reiserfs(&(0x7f0000000000), &(0x7f0000000100)='./file0\x00', 0x8000000, 0x6, &(0x7f0000000200)=[{&(0x7f0000010000)="00400000700200008f3d00000a00000000000000843d000000010000f72a081ce10000001e000000000000000020ec070200010052654973457233467300000003000000020001000000853d0100000003000000000000000000000000000000000000000000000000000000000000000000000001001e006e1f1f63004eed00", 0x80, 0x10000}, {&(0x7f0000010080)="ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00"/1984, 0x7c0, 0x12000}, {&(0x7f0000010840)="ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff", 0x1800, 0x12800}, {&(0x7f0000012040)="0000000000000000000000000a00000000000000843d000000010000f72a081ce10000001e00"/64, 0x40, 0x7b1c000}, {&(0x7f0000012080)="01000200751f0000000000000000000000000000000000000100000002000000000000000000000000002000e01f0000010000000200000001000000f401000002002300bd1f00"/96, 0x60, 0x7b1e000}, {&(0x7f00000120e0)="000000000000000000000000000000000000000000000000000000000001000000010000000200000022000400020000000000000001000000200004002e2e2eed4103008076535f230000006e1f1f636e1f1f636e1f1f6301000000ffffffff", 0x60, 0x7b1ffa0}], 0x0, &(0x7f0000000040)=ANY=[@ANYBLOB="428ed830f9892415"], 0x1) 00:03:00 executing program 1: r0 = socket$packet(0x11, 0x3, 0x300) setsockopt$packet_int(r0, 0x107, 0xf, &(0x7f0000006ffc)=0x4000000000000200, 0xe50fb6c50bc849c9) setsockopt$sock_int(r0, 0x1, 0xc, &(0x7f00000000c0)=0x800, 0x4) r1 = socket$nl_generic(0x10, 0x3, 0x10) ioctl$sock_SIOCGIFINDEX(r1, 0x8933, &(0x7f0000000000)={'macvlan0\x00', 0x0}) (async, rerun: 32) r3 = syz_open_procfs(0x0, &(0x7f0000000040)='attr/exec\x00') (rerun: 32) write$sysctl(r3, 0x0, 0x0) (async, rerun: 32) r4 = syz_open_procfs(0x0, &(0x7f0000000040)='attr/exec\x00') (rerun: 32) write$sysctl(r4, 0x0, 0x0) (async) setsockopt$packet_int(r4, 0x107, 0xb, &(0x7f0000000100), 0x4) (async, rerun: 32) setsockopt$sock_attach_bpf(r3, 0x1, 0x32, &(0x7f0000000080), 0x4) (async, rerun: 32) bind$packet(r0, &(0x7f0000000040)={0x11, 0x0, r2, 0x1, 0x0, 0x6, @local}, 0x14) sendto$inet6(r0, &(0x7f0000000280)="0403092cadf7480401020200c52cf7c25975e010b02f0800eb2b2ff0dac8897c6b112002faffffff3066090cb600c5471d130a66321a54e7df305f80a88161b6fd8f24286a57c3feffff", 0xfc13, 0x800, 0x0, 0x2f) [ 180.092936][ T7081] loop5: detected capacity change from 0 to 262144 00:03:00 executing program 0: r0 = socket$inet_sctp(0x2, 0x5, 0x84) getsockopt$inet_sctp_SCTP_MAX_BURST(r0, 0x84, 0x14, &(0x7f0000000000)=@assoc_value, &(0x7f00000000c0)=0x8) sendmsg$inet_sctp(r0, &(0x7f0000000080)={&(0x7f0000000100)=@in={0x2, 0x0, @local}, 0x10, &(0x7f0000000040)=[{&(0x7f0000000140)="dd", 0x1}], 0x1, &(0x7f0000000480)=ANY=[@ANYBLOB="240000000000000065003a000200000000000b000000000000000000", @ANYRES32=0x0], 0x20}, 0x0) io_uring_enter(0xffffffffffffffff, 0x629b, 0x9ae8, 0xd, &(0x7f0000000180)={[0x10001]}, 0x8) 00:03:00 executing program 4: r0 = socket$inet_tcp(0x2, 0x1, 0x0) bind$inet(r0, &(0x7f0000000100)={0x2, 0x4e20, @multicast2}, 0x62) setsockopt$inet_tcp_TCP_CONGESTION(r0, 0x6, 0xd, &(0x7f00000000c0)='htcp\x00', 0x5) setsockopt$inet_tcp_int(r0, 0x6, 0x2, 0x0, 0x0) r1 = openat(0xffffffffffffffff, &(0x7f00000002c0)='/proc/self/exe\x00', 0x0, 0x0) r2 = syz_open_procfs(0x0, &(0x7f0000000040)='attr/exec\x00') write$sysctl(r2, 0x0, 0x0) r3 = syz_open_procfs(0x0, &(0x7f0000000040)='attr/exec\x00') write$sysctl(r3, 0x0, 0x0) sendfile(r2, r3, &(0x7f0000000000)=0x6, 0x2) setsockopt$SO_ATTACH_FILTER(r0, 0x1, 0x1a, &(0x7f0000000300)={0x1, &(0x7f00000001c0)=[{0x6, 0x0, 0x0, 0x3654}]}, 0x10) connect$inet(r0, &(0x7f0000000180)={0x2, 0x4e20, @loopback}, 0x10) sendfile(r0, r1, 0x0, 0x101000011) recvmsg(r0, &(0x7f0000000580)={0x0, 0x41, &(0x7f0000000500)=[{&(0x7f0000000740)=""/4084, 0xfffffe1f}], 0x6, 0x0, 0xfffffffffffffcc9}, 0x700) [ 180.126653][ T7081] REISERFS warning (device loop5): super-6502 reiserfs_getopt: unknown mount option "BŽØ0ù‰$" 00:03:00 executing program 0: r0 = socket$inet_sctp(0x2, 0x5, 0x84) getsockopt$inet_sctp_SCTP_MAX_BURST(r0, 0x84, 0x14, &(0x7f0000000000)=@assoc_value, &(0x7f00000000c0)=0x8) (async) sendmsg$inet_sctp(r0, &(0x7f0000000080)={&(0x7f0000000100)=@in={0x2, 0x0, @local}, 0x10, &(0x7f0000000040)=[{&(0x7f0000000140)="dd", 0x1}], 0x1, &(0x7f0000000480)=ANY=[@ANYBLOB="240000000000000065003a000200000000000b000000000000000000", @ANYRES32=0x0], 0x20}, 0x0) (async) io_uring_enter(0xffffffffffffffff, 0x629b, 0x9ae8, 0xd, &(0x7f0000000180)={[0x10001]}, 0x8) 00:03:00 executing program 0: r0 = socket$inet_sctp(0x2, 0x5, 0x84) getsockopt$inet_sctp_SCTP_MAX_BURST(r0, 0x84, 0x14, &(0x7f0000000000)=@assoc_value, &(0x7f00000000c0)=0x8) (async) sendmsg$inet_sctp(r0, &(0x7f0000000080)={&(0x7f0000000100)=@in={0x2, 0x0, @local}, 0x10, &(0x7f0000000040)=[{&(0x7f0000000140)="dd", 0x1}], 0x1, &(0x7f0000000480)=ANY=[@ANYBLOB="240000000000000065003a000200000000000b000000000000000000", @ANYRES32=0x0], 0x20}, 0x0) io_uring_enter(0xffffffffffffffff, 0x629b, 0x9ae8, 0xd, &(0x7f0000000180)={[0x10001]}, 0x8) 00:03:00 executing program 1: getsockopt$IP_VS_SO_GET_SERVICES(0xffffffffffffffff, 0x0, 0x482, &(0x7f0000000680)=""/170, &(0x7f0000000740)=0xaa) syz_mount_image$ext4(&(0x7f0000000000)='ext4\x00', &(0x7f0000000100)='./file0\x00', 0x100000, 0x16, &(0x7f0000000200)=[{&(0x7f0000010000)="20000000000100000c000000500000000f000000000000000200000001000000000008000080000020000000741f1f63741f1f630100ffff53ef010001000000741f1f63000000000000000001000000000000000b0000008000000018000000c20500002b8200000000000000000000000000000000000073797a6b616c6c6572000000000000002f746d702f73797a2d696d61676567656e32383038333332373200"/192, 0xc0, 0x400}, {&(0x7f00000100c0)="000000000000000000000000759dbc39feb04b77925045b05177429d010040000c00000000000000741f1f6300"/64, 0x40, 0x4e0}, {&(0x7f0000010100)="0100000000000500400000000000000000000000000000006e00000000000000", 0x20, 0x560}, {&(0x7f0000010120)="00000000000000000100"/32, 0x20, 0x640}, {&(0x7f0000010140)="02000000030000000400000005000f0003000400"/32, 0x20, 0x1000}, {&(0x7f0000010160)="ff07ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0100ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0000000000000000741f1f63741f1f63741f1f6300"/8224, 0x2020, 0x2000}, {&(0x7f0000012180)="ed41000000100000741f1f63741f1f63741f1f6300000000000004008000000000000800050000000af301000400000000000000000000000100000010000000", 0x40, 0x4080}, {&(0x7f00000121c0)="8081000000c04000741f1f63741f1f63741f1f63000000000000010080000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000300000000000000000000000000000000100"/128, 0x80, 0x4300}, {&(0x7f0000012240)="c041000000400000741f1f63741f1f63741f1f6300000000000002008000000000000800000000000af301000400000000000000000000000400000020000000", 0x40, 0x4500}, {&(0x7f0000012280)="ed41000000100000741f1f63741f1f63741f1f6300000000000002008000000000000800030000000af3010004000000000000000000000001000000500000000000000000000000000000000000000000000000000000000000000000000000000000009c45968f000000000000000000000000000000000000000000000000ed8100001a040000741f1f63741f1f63741f1f6300000000000001008000000000000800010000000af3010004000000000000000000000001000000600000000000000000000000000000000000000000000000000000000000000000000000000000003e13fde4000000000000000000000000000000000000000000000000ffa1000026000000741f1f63741f1f63741f1f6300000000000001000000000000000000010000002f746d702f73797a2d696d61676567656e3238303833333237322f66696c65302f66696c65300000000000000000000000000000000000000000000064a3b1f6000000000000000000000000000000000000000000000000ed8100000a000000741f1f63741f1f63741f1f6300000000000001000001000000000800010000000af3010004000000000000000000000001000000700000000000000000000000000000000000000000000000000000000000000000000000000000007b1809e5800000000000000000000000000000000000000000000000ed81000028230000741f1f63741f1f63741f1f6300000000000002008000000000000800010000000af30100040000000000000000000000030000009000000001000000020000009100000002000000010000009200000000000000000000000000000012bc135d000000000000000000000000000000000000000000000000ed81000064000000741f1f63741f1f63741f1f6300000000000001008000000000000800010000000af3010004000000000000000000000001000000a00000000000000000000000000000000000000000000000000000000000000000000000000000000d63959000"/768, 0x300, 0x4580}, {&(0x7f0000012580)="020000000c0001022e000000020000000c0002022e2e00000b00000014000a026c6f73742b666f756e6400000c0000001000050266696c65300000000f0000001000050166696c6531000000100000001000050166696c6532000000100000001000050166696c653300000011000000940f090166696c652e636f6c64000000", 0x80, 0x10000}, {&(0x7f0000012600)="0b0000000c0001022e00000002000000f40f02022e2e00"/32, 0x20, 0x20000}, {&(0x7f0000012620)="00000000001000"/32, 0x20, 0x21000}, {&(0x7f0000012640)="00000000001000"/32, 0x20, 0x22000}, {&(0x7f0000012660)="00000000001000"/32, 0x20, 0x23000}, {&(0x7f0000012680)="504d4d00504d4dff741f1f63000000006872757476696b2e632e676f6f676c6572732e636f6d0000000000000000000000000000000000000000000000000000000000000000000000000000000000006c6f6f7039006e75782f746573742f73797a5f6d6f756e745f696d6167655f650500"/128, 0x80, 0x40000}, {&(0x7f0000012700)="0c0000000c0001022e000000020000000c0002022e2e00000d0000001000050166696c65300000000e000000d80f050766696c653100"/64, 0x40, 0x50000}, {&(0x7f0000012740)='syzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkal\x00\x00\x00\x00\x00\x00', 0x420, 0x60000}, {&(0x7f0000012b60)='syzkallers\x00'/32, 0x20, 0x70000}, {&(0x7f0000012b80)="000002ea0100000001000000270f240c000000000000000000000000000000000601f80f0000000006000000779b539778617474723100000601f00f00000000060000007498539778617474723200"/96, 0x60, 0x80000}, {&(0x7f0000012be0)='\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00xattr2\x00\x00xattr1\x00\x00', 0x20, 0x80fe0}, {&(0x7f0000012c00)='syzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallers\x00'/128, 0x80, 0xa0000}], 0x0, &(0x7f0000012c80), 0x1) r0 = socket$nl_rdma(0x10, 0x3, 0x14) syz_io_uring_setup(0x5cfa, &(0x7f0000000080)={0x0, 0xf8df, 0x1, 0x2, 0x34d}, &(0x7f0000ff9000/0x4000)=nil, &(0x7f0000ffb000/0x3000)=nil, &(0x7f0000000140), &(0x7f0000000180)=0x0) r2 = syz_open_procfs(0x0, &(0x7f0000000040)='attr/exec\x00') ioctl$AUTOFS_DEV_IOCTL_ISMOUNTPOINT(r2, 0xc018937e, &(0x7f0000000540)={{0x1, 0x1, 0x18, r0, {0x2}}, './file0\x00'}) ioctl$DRM_IOCTL_AGP_INFO(r3, 0x80386433, &(0x7f0000000580)=""/217) write$sysctl(r2, 0x0, 0x0) syz_io_uring_setup(0x184, &(0x7f0000000540), &(0x7f000014a000/0x2000)=nil, &(0x7f0000ffd000/0x3000)=nil, &(0x7f0000000040)=0x0, &(0x7f0000000100)=0x0) r6 = socket$vsock_stream(0x28, 0x1, 0x0) syz_io_uring_submit(r4, r5, &(0x7f0000000000)=@IORING_OP_CONNECT={0x10, 0x0, 0x0, r6, 0x80, &(0x7f0000000200)=@in={0x2, 0x0, @private}}, 0x0) syz_io_uring_setup(0x184, &(0x7f0000000540), &(0x7f000014a000/0x2000)=nil, &(0x7f0000ffd000/0x3000)=nil, &(0x7f0000000040)=0x0, &(0x7f0000000100)=0x0) r9 = socket$vsock_stream(0x28, 0x1, 0x0) syz_io_uring_submit(r7, r8, &(0x7f0000000000)=@IORING_OP_CONNECT={0x10, 0x0, 0x0, r9, 0x80, &(0x7f0000000200)=@in={0x2, 0x0, @private}}, 0x0) pipe2(&(0x7f0000000780)={0xffffffffffffffff}, 0x800) syz_io_uring_submit(r4, r8, &(0x7f00000007c0)=@IORING_OP_FSYNC={0x3, 0x12, 0x0, @fd=r10}, 0x7ff) syz_io_uring_submit(0x0, r1, &(0x7f00000001c0)=@IORING_OP_RECV=@pass_buffer={0x1b, 0x4, 0x0, r2, 0x0, &(0x7f0000000440)="69bb94fe0a8001b70d3577c067e1d4c96b7a3dd0b42e8dab09293826bf4e514b8b50e0359abbb6504c9dc34bc05c389b58826ce91eaaead6cf8767460daf2574c5dcb67c70c178cd4af0b25adb9d6b1d12077dad100183e78341dd28d2c2bad949bb035dd7f16439599e08001cc0263e8cfeafd64ae19274c522a39d2b17ac67becce1b4c87e5b7d91a1dc78e2c5ebd75a9ea0a0b89d77b92d0545819f7bac21e7c4a59cc378a25ef37bd907bd7949acfda7cefdb85aa62cf8d54195051acf02cfc65c122af989d172bf2635ac", 0xcd, 0x0, 0x1}, 0x5) ioctl$BTRFS_IOC_BALANCE_CTL(r0, 0x40049421, 0x2) write$FUSE_NOTIFY_RETRIEVE(0xffffffffffffffff, &(0x7f0000000040)={0x30, 0x5, 0x0, {0x0, 0x4, 0x2, 0x2}}, 0x30) setsockopt$MRT_INIT(r3, 0x0, 0xc8, &(0x7f0000000800), 0x4) [ 180.250367][ T7110] loop1: detected capacity change from 0 to 2048 [ 180.259094][ T7110] EXT4-fs (loop1): cluster size (2048) smaller than block size (4096) 00:03:00 executing program 5: syz_mount_image$reiserfs(&(0x7f0000000000), &(0x7f0000000100)='./file0\x00', 0x8000000, 0x6, &(0x7f0000000200)=[{&(0x7f0000010000)="00400000700200008f3d00000a00000000000000843d000000010000f72a081ce10000001e000000000000000020ec070200010052654973457233467300000003000000020001000000853d0100000003000000000000000000000000000000000000000000000000000000000000000000000001001e006e1f1f63004eed00", 0x80, 0x10000}, {&(0x7f0000010080)="ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00"/1984, 0x7c0, 0x12000}, {&(0x7f0000010840)="ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff", 0x1800, 0x12800}, {&(0x7f0000012040)="0000000000000000000000000a00000000000000843d000000010000f72a081ce10000001e00"/64, 0x40, 0x7b1c000}, {&(0x7f0000012080)="01000200751f0000000000000000000000000000000000000100000002000000000000000000000000002000e01f0000010000000200000001000000f401000002002300bd1f00"/96, 0x60, 0x7b1e000}, {&(0x7f00000120e0)="000000000000000000000000000000000000000000000000000000000001000000010000000200000022000400020000000000000001000000200004002e2e2eed4103008076535f230000006e1f1f636e1f1f636e1f1f6301000000ffffffff", 0x60, 0x7b1ffa0}], 0x0, &(0x7f0000000040)=ANY=[@ANYBLOB="428ed830f9892415"], 0x1) [ 180.286986][ T7113] loop5: detected capacity change from 0 to 262144 [ 180.292170][ T7113] REISERFS warning (device loop5): super-6502 reiserfs_getopt: unknown mount option "BŽØ0ù‰$" 00:03:00 executing program 1: getsockopt$IP_VS_SO_GET_SERVICES(0xffffffffffffffff, 0x0, 0x482, &(0x7f0000000680)=""/170, &(0x7f0000000740)=0xaa) (async) syz_mount_image$ext4(&(0x7f0000000000)='ext4\x00', &(0x7f0000000100)='./file0\x00', 0x100000, 0x16, &(0x7f0000000200)=[{&(0x7f0000010000)="20000000000100000c000000500000000f000000000000000200000001000000000008000080000020000000741f1f63741f1f630100ffff53ef010001000000741f1f63000000000000000001000000000000000b0000008000000018000000c20500002b8200000000000000000000000000000000000073797a6b616c6c6572000000000000002f746d702f73797a2d696d61676567656e32383038333332373200"/192, 0xc0, 0x400}, {&(0x7f00000100c0)="000000000000000000000000759dbc39feb04b77925045b05177429d010040000c00000000000000741f1f6300"/64, 0x40, 0x4e0}, {&(0x7f0000010100)="0100000000000500400000000000000000000000000000006e00000000000000", 0x20, 0x560}, {&(0x7f0000010120)="00000000000000000100"/32, 0x20, 0x640}, {&(0x7f0000010140)="02000000030000000400000005000f0003000400"/32, 0x20, 0x1000}, {&(0x7f0000010160)="ff07ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0100ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0000000000000000741f1f63741f1f63741f1f6300"/8224, 0x2020, 0x2000}, {&(0x7f0000012180)="ed41000000100000741f1f63741f1f63741f1f6300000000000004008000000000000800050000000af301000400000000000000000000000100000010000000", 0x40, 0x4080}, {&(0x7f00000121c0)="8081000000c04000741f1f63741f1f63741f1f63000000000000010080000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000300000000000000000000000000000000100"/128, 0x80, 0x4300}, {&(0x7f0000012240)="c041000000400000741f1f63741f1f63741f1f6300000000000002008000000000000800000000000af301000400000000000000000000000400000020000000", 0x40, 0x4500}, {&(0x7f0000012280)="ed41000000100000741f1f63741f1f63741f1f6300000000000002008000000000000800030000000af3010004000000000000000000000001000000500000000000000000000000000000000000000000000000000000000000000000000000000000009c45968f000000000000000000000000000000000000000000000000ed8100001a040000741f1f63741f1f63741f1f6300000000000001008000000000000800010000000af3010004000000000000000000000001000000600000000000000000000000000000000000000000000000000000000000000000000000000000003e13fde4000000000000000000000000000000000000000000000000ffa1000026000000741f1f63741f1f63741f1f6300000000000001000000000000000000010000002f746d702f73797a2d696d61676567656e3238303833333237322f66696c65302f66696c65300000000000000000000000000000000000000000000064a3b1f6000000000000000000000000000000000000000000000000ed8100000a000000741f1f63741f1f63741f1f6300000000000001000001000000000800010000000af3010004000000000000000000000001000000700000000000000000000000000000000000000000000000000000000000000000000000000000007b1809e5800000000000000000000000000000000000000000000000ed81000028230000741f1f63741f1f63741f1f6300000000000002008000000000000800010000000af30100040000000000000000000000030000009000000001000000020000009100000002000000010000009200000000000000000000000000000012bc135d000000000000000000000000000000000000000000000000ed81000064000000741f1f63741f1f63741f1f6300000000000001008000000000000800010000000af3010004000000000000000000000001000000a00000000000000000000000000000000000000000000000000000000000000000000000000000000d63959000"/768, 0x300, 0x4580}, {&(0x7f0000012580)="020000000c0001022e000000020000000c0002022e2e00000b00000014000a026c6f73742b666f756e6400000c0000001000050266696c65300000000f0000001000050166696c6531000000100000001000050166696c6532000000100000001000050166696c653300000011000000940f090166696c652e636f6c64000000", 0x80, 0x10000}, {&(0x7f0000012600)="0b0000000c0001022e00000002000000f40f02022e2e00"/32, 0x20, 0x20000}, {&(0x7f0000012620)="00000000001000"/32, 0x20, 0x21000}, {&(0x7f0000012640)="00000000001000"/32, 0x20, 0x22000}, {&(0x7f0000012660)="00000000001000"/32, 0x20, 0x23000}, {&(0x7f0000012680)="504d4d00504d4dff741f1f63000000006872757476696b2e632e676f6f676c6572732e636f6d0000000000000000000000000000000000000000000000000000000000000000000000000000000000006c6f6f7039006e75782f746573742f73797a5f6d6f756e745f696d6167655f650500"/128, 0x80, 0x40000}, {&(0x7f0000012700)="0c0000000c0001022e000000020000000c0002022e2e00000d0000001000050166696c65300000000e000000d80f050766696c653100"/64, 0x40, 0x50000}, {&(0x7f0000012740)='syzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkal\x00\x00\x00\x00\x00\x00', 0x420, 0x60000}, {&(0x7f0000012b60)='syzkallers\x00'/32, 0x20, 0x70000}, {&(0x7f0000012b80)="000002ea0100000001000000270f240c000000000000000000000000000000000601f80f0000000006000000779b539778617474723100000601f00f00000000060000007498539778617474723200"/96, 0x60, 0x80000}, {&(0x7f0000012be0)='\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00xattr2\x00\x00xattr1\x00\x00', 0x20, 0x80fe0}, {&(0x7f0000012c00)='syzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallers\x00'/128, 0x80, 0xa0000}], 0x0, &(0x7f0000012c80), 0x1) (async) r0 = socket$nl_rdma(0x10, 0x3, 0x14) (async) syz_io_uring_setup(0x5cfa, &(0x7f0000000080)={0x0, 0xf8df, 0x1, 0x2, 0x34d}, &(0x7f0000ff9000/0x4000)=nil, &(0x7f0000ffb000/0x3000)=nil, &(0x7f0000000140), &(0x7f0000000180)=0x0) (async) r2 = syz_open_procfs(0x0, &(0x7f0000000040)='attr/exec\x00') ioctl$AUTOFS_DEV_IOCTL_ISMOUNTPOINT(r2, 0xc018937e, &(0x7f0000000540)={{0x1, 0x1, 0x18, r0, {0x2}}, './file0\x00'}) ioctl$DRM_IOCTL_AGP_INFO(r3, 0x80386433, &(0x7f0000000580)=""/217) (async) write$sysctl(r2, 0x0, 0x0) syz_io_uring_setup(0x184, &(0x7f0000000540), &(0x7f000014a000/0x2000)=nil, &(0x7f0000ffd000/0x3000)=nil, &(0x7f0000000040)=0x0, &(0x7f0000000100)=0x0) (async) r6 = socket$vsock_stream(0x28, 0x1, 0x0) syz_io_uring_submit(r4, r5, &(0x7f0000000000)=@IORING_OP_CONNECT={0x10, 0x0, 0x0, r6, 0x80, &(0x7f0000000200)=@in={0x2, 0x0, @private}}, 0x0) (async) syz_io_uring_setup(0x184, &(0x7f0000000540), &(0x7f000014a000/0x2000)=nil, &(0x7f0000ffd000/0x3000)=nil, &(0x7f0000000040)=0x0, &(0x7f0000000100)=0x0) r9 = socket$vsock_stream(0x28, 0x1, 0x0) syz_io_uring_submit(r7, r8, &(0x7f0000000000)=@IORING_OP_CONNECT={0x10, 0x0, 0x0, r9, 0x80, &(0x7f0000000200)=@in={0x2, 0x0, @private}}, 0x0) (async) pipe2(&(0x7f0000000780)={0xffffffffffffffff}, 0x800) syz_io_uring_submit(r4, r8, &(0x7f00000007c0)=@IORING_OP_FSYNC={0x3, 0x12, 0x0, @fd=r10}, 0x7ff) (async) syz_io_uring_submit(0x0, r1, &(0x7f00000001c0)=@IORING_OP_RECV=@pass_buffer={0x1b, 0x4, 0x0, r2, 0x0, &(0x7f0000000440)="69bb94fe0a8001b70d3577c067e1d4c96b7a3dd0b42e8dab09293826bf4e514b8b50e0359abbb6504c9dc34bc05c389b58826ce91eaaead6cf8767460daf2574c5dcb67c70c178cd4af0b25adb9d6b1d12077dad100183e78341dd28d2c2bad949bb035dd7f16439599e08001cc0263e8cfeafd64ae19274c522a39d2b17ac67becce1b4c87e5b7d91a1dc78e2c5ebd75a9ea0a0b89d77b92d0545819f7bac21e7c4a59cc378a25ef37bd907bd7949acfda7cefdb85aa62cf8d54195051acf02cfc65c122af989d172bf2635ac", 0xcd, 0x0, 0x1}, 0x5) (async) ioctl$BTRFS_IOC_BALANCE_CTL(r0, 0x40049421, 0x2) (async) write$FUSE_NOTIFY_RETRIEVE(0xffffffffffffffff, &(0x7f0000000040)={0x30, 0x5, 0x0, {0x0, 0x4, 0x2, 0x2}}, 0x30) (async) setsockopt$MRT_INIT(r3, 0x0, 0xc8, &(0x7f0000000800), 0x4) [ 180.348284][ T7117] loop1: detected capacity change from 0 to 2048 00:03:00 executing program 1: getsockopt$IP_VS_SO_GET_SERVICES(0xffffffffffffffff, 0x0, 0x482, &(0x7f0000000680)=""/170, &(0x7f0000000740)=0xaa) (async) syz_mount_image$ext4(&(0x7f0000000000)='ext4\x00', &(0x7f0000000100)='./file0\x00', 0x100000, 0x16, &(0x7f0000000200)=[{&(0x7f0000010000)="20000000000100000c000000500000000f000000000000000200000001000000000008000080000020000000741f1f63741f1f630100ffff53ef010001000000741f1f63000000000000000001000000000000000b0000008000000018000000c20500002b8200000000000000000000000000000000000073797a6b616c6c6572000000000000002f746d702f73797a2d696d61676567656e32383038333332373200"/192, 0xc0, 0x400}, {&(0x7f00000100c0)="000000000000000000000000759dbc39feb04b77925045b05177429d010040000c00000000000000741f1f6300"/64, 0x40, 0x4e0}, {&(0x7f0000010100)="0100000000000500400000000000000000000000000000006e00000000000000", 0x20, 0x560}, {&(0x7f0000010120)="00000000000000000100"/32, 0x20, 0x640}, {&(0x7f0000010140)="02000000030000000400000005000f0003000400"/32, 0x20, 0x1000}, {&(0x7f0000010160)="ff07ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0100ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0000000000000000741f1f63741f1f63741f1f6300"/8224, 0x2020, 0x2000}, {&(0x7f0000012180)="ed41000000100000741f1f63741f1f63741f1f6300000000000004008000000000000800050000000af301000400000000000000000000000100000010000000", 0x40, 0x4080}, {&(0x7f00000121c0)="8081000000c04000741f1f63741f1f63741f1f63000000000000010080000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000300000000000000000000000000000000100"/128, 0x80, 0x4300}, {&(0x7f0000012240)="c041000000400000741f1f63741f1f63741f1f6300000000000002008000000000000800000000000af301000400000000000000000000000400000020000000", 0x40, 0x4500}, {&(0x7f0000012280)="ed41000000100000741f1f63741f1f63741f1f6300000000000002008000000000000800030000000af3010004000000000000000000000001000000500000000000000000000000000000000000000000000000000000000000000000000000000000009c45968f000000000000000000000000000000000000000000000000ed8100001a040000741f1f63741f1f63741f1f6300000000000001008000000000000800010000000af3010004000000000000000000000001000000600000000000000000000000000000000000000000000000000000000000000000000000000000003e13fde4000000000000000000000000000000000000000000000000ffa1000026000000741f1f63741f1f63741f1f6300000000000001000000000000000000010000002f746d702f73797a2d696d61676567656e3238303833333237322f66696c65302f66696c65300000000000000000000000000000000000000000000064a3b1f6000000000000000000000000000000000000000000000000ed8100000a000000741f1f63741f1f63741f1f6300000000000001000001000000000800010000000af3010004000000000000000000000001000000700000000000000000000000000000000000000000000000000000000000000000000000000000007b1809e5800000000000000000000000000000000000000000000000ed81000028230000741f1f63741f1f63741f1f6300000000000002008000000000000800010000000af30100040000000000000000000000030000009000000001000000020000009100000002000000010000009200000000000000000000000000000012bc135d000000000000000000000000000000000000000000000000ed81000064000000741f1f63741f1f63741f1f6300000000000001008000000000000800010000000af3010004000000000000000000000001000000a00000000000000000000000000000000000000000000000000000000000000000000000000000000d63959000"/768, 0x300, 0x4580}, {&(0x7f0000012580)="020000000c0001022e000000020000000c0002022e2e00000b00000014000a026c6f73742b666f756e6400000c0000001000050266696c65300000000f0000001000050166696c6531000000100000001000050166696c6532000000100000001000050166696c653300000011000000940f090166696c652e636f6c64000000", 0x80, 0x10000}, {&(0x7f0000012600)="0b0000000c0001022e00000002000000f40f02022e2e00"/32, 0x20, 0x20000}, {&(0x7f0000012620)="00000000001000"/32, 0x20, 0x21000}, {&(0x7f0000012640)="00000000001000"/32, 0x20, 0x22000}, {&(0x7f0000012660)="00000000001000"/32, 0x20, 0x23000}, {&(0x7f0000012680)="504d4d00504d4dff741f1f63000000006872757476696b2e632e676f6f676c6572732e636f6d0000000000000000000000000000000000000000000000000000000000000000000000000000000000006c6f6f7039006e75782f746573742f73797a5f6d6f756e745f696d6167655f650500"/128, 0x80, 0x40000}, {&(0x7f0000012700)="0c0000000c0001022e000000020000000c0002022e2e00000d0000001000050166696c65300000000e000000d80f050766696c653100"/64, 0x40, 0x50000}, {&(0x7f0000012740)='syzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkal\x00\x00\x00\x00\x00\x00', 0x420, 0x60000}, {&(0x7f0000012b60)='syzkallers\x00'/32, 0x20, 0x70000}, {&(0x7f0000012b80)="000002ea0100000001000000270f240c000000000000000000000000000000000601f80f0000000006000000779b539778617474723100000601f00f00000000060000007498539778617474723200"/96, 0x60, 0x80000}, {&(0x7f0000012be0)='\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00xattr2\x00\x00xattr1\x00\x00', 0x20, 0x80fe0}, {&(0x7f0000012c00)='syzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallers\x00'/128, 0x80, 0xa0000}], 0x0, &(0x7f0000012c80), 0x1) r0 = socket$nl_rdma(0x10, 0x3, 0x14) (async) syz_io_uring_setup(0x5cfa, &(0x7f0000000080)={0x0, 0xf8df, 0x1, 0x2, 0x34d}, &(0x7f0000ff9000/0x4000)=nil, &(0x7f0000ffb000/0x3000)=nil, &(0x7f0000000140), &(0x7f0000000180)=0x0) (async) r2 = syz_open_procfs(0x0, &(0x7f0000000040)='attr/exec\x00') ioctl$AUTOFS_DEV_IOCTL_ISMOUNTPOINT(r2, 0xc018937e, &(0x7f0000000540)={{0x1, 0x1, 0x18, r0, {0x2}}, './file0\x00'}) ioctl$DRM_IOCTL_AGP_INFO(r3, 0x80386433, &(0x7f0000000580)=""/217) write$sysctl(r2, 0x0, 0x0) (async) syz_io_uring_setup(0x184, &(0x7f0000000540), &(0x7f000014a000/0x2000)=nil, &(0x7f0000ffd000/0x3000)=nil, &(0x7f0000000040)=0x0, &(0x7f0000000100)=0x0) (async) r6 = socket$vsock_stream(0x28, 0x1, 0x0) syz_io_uring_submit(r4, r5, &(0x7f0000000000)=@IORING_OP_CONNECT={0x10, 0x0, 0x0, r6, 0x80, &(0x7f0000000200)=@in={0x2, 0x0, @private}}, 0x0) syz_io_uring_setup(0x184, &(0x7f0000000540), &(0x7f000014a000/0x2000)=nil, &(0x7f0000ffd000/0x3000)=nil, &(0x7f0000000040)=0x0, &(0x7f0000000100)=0x0) (async) r9 = socket$vsock_stream(0x28, 0x1, 0x0) syz_io_uring_submit(r7, r8, &(0x7f0000000000)=@IORING_OP_CONNECT={0x10, 0x0, 0x0, r9, 0x80, &(0x7f0000000200)=@in={0x2, 0x0, @private}}, 0x0) (async) pipe2(&(0x7f0000000780)={0xffffffffffffffff}, 0x800) syz_io_uring_submit(r4, r8, &(0x7f00000007c0)=@IORING_OP_FSYNC={0x3, 0x12, 0x0, @fd=r10}, 0x7ff) syz_io_uring_submit(0x0, r1, &(0x7f00000001c0)=@IORING_OP_RECV=@pass_buffer={0x1b, 0x4, 0x0, r2, 0x0, &(0x7f0000000440)="69bb94fe0a8001b70d3577c067e1d4c96b7a3dd0b42e8dab09293826bf4e514b8b50e0359abbb6504c9dc34bc05c389b58826ce91eaaead6cf8767460daf2574c5dcb67c70c178cd4af0b25adb9d6b1d12077dad100183e78341dd28d2c2bad949bb035dd7f16439599e08001cc0263e8cfeafd64ae19274c522a39d2b17ac67becce1b4c87e5b7d91a1dc78e2c5ebd75a9ea0a0b89d77b92d0545819f7bac21e7c4a59cc378a25ef37bd907bd7949acfda7cefdb85aa62cf8d54195051acf02cfc65c122af989d172bf2635ac", 0xcd, 0x0, 0x1}, 0x5) (async) ioctl$BTRFS_IOC_BALANCE_CTL(r0, 0x40049421, 0x2) write$FUSE_NOTIFY_RETRIEVE(0xffffffffffffffff, &(0x7f0000000040)={0x30, 0x5, 0x0, {0x0, 0x4, 0x2, 0x2}}, 0x30) (async) setsockopt$MRT_INIT(r3, 0x0, 0xc8, &(0x7f0000000800), 0x4) [ 180.427787][ T3087] I/O error, dev loop1, sector 0 op 0x0:(READ) flags 0x80700 phys_seg 1 prio class 2 [ 180.435740][ T7123] loop1: detected capacity change from 0 to 2048 [ 180.439689][ T7123] EXT4-fs (loop1): cluster size (2048) smaller than block size (4096) 00:03:00 executing program 3: r0 = socket$inet_tcp(0x2, 0x1, 0x0) bind$inet(r0, &(0x7f0000000100)={0x2, 0x4e20, @multicast2}, 0x62) setsockopt$inet_tcp_TCP_CONGESTION(r0, 0x6, 0xd, &(0x7f00000000c0)='htcp\x00', 0x5) setsockopt$inet_tcp_int(r0, 0x6, 0x2, &(0x7f0000000080), 0x4) r1 = openat(0xffffffffffffffff, &(0x7f00000002c0)='/proc/self/exe\x00', 0x0, 0x0) r2 = syz_open_procfs(0x0, &(0x7f0000000040)='attr/exec\x00') write$sysctl(r2, 0x0, 0x0) r3 = syz_open_procfs(0x0, &(0x7f0000000040)='attr/exec\x00') write$sysctl(r3, 0x0, 0x0) sendfile(r2, r3, &(0x7f0000000000)=0x6, 0x2) setsockopt$SO_ATTACH_FILTER(r0, 0x1, 0x1a, &(0x7f0000000300)={0x1, &(0x7f00000001c0)=[{0x6, 0x0, 0x0, 0x3654}]}, 0x10) connect$inet(r0, &(0x7f0000000180)={0x2, 0x4e20, @loopback}, 0x10) sendfile(r0, r1, 0x0, 0x101000011) recvmsg(r0, &(0x7f0000000580)={0x0, 0x41, &(0x7f0000000500)=[{&(0x7f0000000740)=""/4084, 0xfffffe1f}], 0x6, 0x0, 0xfffffffffffffcc9}, 0x700) 00:03:00 executing program 0: socketpair$unix(0x1, 0x0, 0x0, 0x0) recvmmsg(0xffffffffffffffff, 0x0, 0x0, 0x0, 0x0) r0 = syz_mount_image$f2fs(&(0x7f0000000000), &(0x7f00000000c0)='./file0\x00', 0x4000b20, 0x26, &(0x7f0000000200)=[{&(0x7f0000010000)="1020f5f201000e0009000000030000000c000000090000000100000001000000000000000040000000000000180000001f0000000200000002000000020000000100000018000000000200000002000000060000000a0000000e000000100000030000000100000002000000a3bd865da4e84b259caac903308887eb00000000", 0x80, 0x400}, {&(0x7f0000010080)='\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00$\x00\x00\x00mp\x00\x00\x00\x00\x00\x00wm\x00\x00\x00\x00\x00\x00og\x00\x00\x00\x00\x00\x00jp\x00\x00\x00\x00\x00\x00avi\x00\x00\x00\x00\x00m4v\x00\x00\x00\x00\x00m4p\x00\x00\x00\x00\x00mkv\x00\x00\x00\x00\x00mov\x00\x00\x00\x00\x00webm\x00\x00\x00\x00wav\x00\x00\x00\x00\x00m4a\x00\x00\x00\x00\x003gp\x00\x00\x00\x00\x00opus\x00\x00\x00\x00flac\x00\x00\x00\x00gif\x00\x00\x00\x00\x00png\x00\x00\x00\x00\x00svg\x00\x00\x00\x00\x00webp\x00\x00\x00\x00jar\x00\x00\x00\x00\x00deb\x00\x00\x00\x00\x00iso\x00\x00\x00\x00\x00gz\x00\x00\x00\x00\x00\x00xz\x00\x00\x00\x00\x00\x00zst\x00\x00\x00\x00\x00pdf\x00\x00\x00\x00\x00pyc\x00\x00\x00\x00\x00ttc\x00\x00\x00\x00\x00ttf\x00\x00\x00\x00\x00exe\x00\x00\x00\x00\x00apk\x00\x00\x00\x00\x00cnt\x00\x00\x00\x00\x00exo\x00\x00\x00\x00\x00odex\x00\x00\x00\x00vdex\x00\x00\x00\x00so\x00\x00\x00\x00\x00\x00db\x00'/352, 0x160, 0x860}, {&(0x7f0000010280)='\x00\x00\x00\x00Linux version 5.10.0-rc6-00193-gdafc6e24daf4 (e@sol) (gcc (GCC) 10.2.0, GNU ld (GNU Binutils) 2.35.1) #1 SMP PREEMPT Mon Nov 30 13:52:38 PST 2020\x00'/160, 0xa0, 0xb80}, {&(0x7f0000010320)="000000000100"/32, 0x20, 0xc80}, {&(0x7f0000010340)="00000000000100"/32, 0x20, 0xec0}, {&(0x7f0000010360)="1020f5f201000e0009000000030000000c000000090000000100000001000000000000000040000000000000180000001f0000000200000002000000020000000100000018000000000200000002000000060000000a0000000e000000100000030000000100000002000000a3bd865da4e84b259caac903308887eb00000000", 0x80, 0x1400}, {&(0x7f00000103e0)='\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00$\x00\x00\x00mp\x00\x00\x00\x00\x00\x00wm\x00\x00\x00\x00\x00\x00og\x00\x00\x00\x00\x00\x00jp\x00\x00\x00\x00\x00\x00avi\x00\x00\x00\x00\x00m4v\x00\x00\x00\x00\x00m4p\x00\x00\x00\x00\x00mkv\x00\x00\x00\x00\x00mov\x00\x00\x00\x00\x00webm\x00\x00\x00\x00wav\x00\x00\x00\x00\x00m4a\x00\x00\x00\x00\x003gp\x00\x00\x00\x00\x00opus\x00\x00\x00\x00flac\x00\x00\x00\x00gif\x00\x00\x00\x00\x00png\x00\x00\x00\x00\x00svg\x00\x00\x00\x00\x00webp\x00\x00\x00\x00jar\x00\x00\x00\x00\x00deb\x00\x00\x00\x00\x00iso\x00\x00\x00\x00\x00gz\x00\x00\x00\x00\x00\x00xz\x00\x00\x00\x00\x00\x00zst\x00\x00\x00\x00\x00pdf\x00\x00\x00\x00\x00pyc\x00\x00\x00\x00\x00ttc\x00\x00\x00\x00\x00ttf\x00\x00\x00\x00\x00exe\x00\x00\x00\x00\x00apk\x00\x00\x00\x00\x00cnt\x00\x00\x00\x00\x00exo\x00\x00\x00\x00\x00odex\x00\x00\x00\x00vdex\x00\x00\x00\x00so\x00\x00\x00\x00\x00\x00db\x00'/352, 0x160, 0x1860}, {&(0x7f0000010540)='\x00\x00\x00\x00Linux version 5.10.0-rc6-00193-gdafc6e24daf4 (e@sol) (gcc (GCC) 10.2.0, GNU ld (GNU Binutils) 2.35.1) #1 SMP PREEMPT Mon Nov 30 13:52:38 PST 2020\x00'/160, 0xa0, 0x1a80}, {&(0x7f00000105e0)='\x00\x00\x00\x00Linux version 5.10.0-rc6-00193-gdafc6e24daf4 (e@sol) (gcc (GCC) 10.2.0, GNU ld (GNU Binutils) 2.35.1) #1 SMP PREEMPT Mon Nov 30 13:52:38 PST 2020\x00'/160, 0xa0, 0x1b80}, {&(0x7f0000010680)="000000000100"/32, 0x20, 0x1c80}, {&(0x7f00000106a0)="00000000000100"/32, 0x20, 0x1ec0}, {&(0x7f00000106c0)="0bd03b7500000000001000000000000002000000000000000d0000001000000012000000000000000100000002000000ffffffffffffffffffffffffffffffffffffffff01000000000000000000000000000000030000000b00000005000000ffffffffffffffffffffffffffffffffffffffff010000000000000000000000000000008501000006000000010000000100000001000000040000004000000040000000fc0f00"/192, 0xc0, 0x200000}, {&(0x7f0000010780)="00000000000000000000000000000000000000000000000000000000d9fa28d50100030000000003000000001000"/64, 0x40, 0x200fe0}, {&(0x7f00000107c0)="000000000000000000000000000000000000000000000000000000060000000000010c8000"/64, 0x40, 0x2011e0}, {&(0x7f0000010800)="000000000000000000000001000000001000"/32, 0x20, 0x201240}, {&(0x7f0000010820)="0000000000000000000000af2c787bda05ef2500000000140000000000000000", 0x20, 0x201280}, {&(0x7f0000010840)="000000000000000300000001008000"/32, 0x20, 0x2012e0}, {&(0x7f0000010860)="0000000000000000000000000000000000000000000b00000000040000000000", 0x20, 0x201320}, {&(0x7f0000010880)="00000005000000000800"/32, 0x20, 0x201380}, {&(0x7f00000108a0)="0000000000000000000000000000000000000000000003000000000000000000", 0x20, 0x2013e0}, {&(0x7f00000108c0)="0300"/32, 0x20, 0x202002}, {&(0x7f00000108e0)="000000000000002300000000001be5865f0fffffc21c8bf30000200000000000", 0x20, 0x202fe0}, {&(0x7f0000010900)="0000000000000000000000000000000000000000000000000000000100000000", 0x20, 0x203fe0}, {&(0x7f0000010920)="00000000000000000000000000000000000000000000000000000001000000000bd03b7500000000001000000000000002000000000000000d0000001000000012000000000000000100000002000000ffffffffffffffffffffffffffffffffffffffff01000000000000000000000000000000030000000b00000005000000ffffffffffffffffffffffffffffffffffffffff010000000000000000000000000000008501000006000000010000000100000001000000040000004000000040000000fc0f00"/224, 0xe0, 0x204fe0}, {&(0x7f0000010a00)="00000000000000000000000000000000000000000000000000000000d9fa28d5", 0x20, 0x205fe0}, {&(0x7f0000010a20)="0bd03b75d9fa28d500"/32, 0x20, 0x3ff000}, {&(0x7f0000010a40)="0000000000000000feffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00"/96, 0x60, 0x3ff040}, {&(0x7f0000010aa0)="0000000000000000001000000000000002000000000000000d0000001000000012000000000000000100000002000000ffffffffffffffffffffffffffffffffffffffff01000000000000000000000000000000030000000b00000005000000ffffffffffffffffffffffffffffffffffffffff010000000000000000000000000000008501000006000000010000000100000001000000040000004000000040000000fc0f00"/192, 0xc0, 0x400000}, {&(0x7f0000010b60)="00000000000000000000000000000000000000000000000000000000d9a1f350", 0x20, 0x400fe0}, {&(0x7f0000010b80)="0000000000000000001000000000000002000000000000000d0000001000000012000000000000000100000002000000ffffffffffffffffffffffffffffffffffffffff01000000000000000000000000000000030000000b00000005000000ffffffffffffffffffffffffffffffffffffffff010000000000000000000000000000008501000006000000010000000100000001000000040000004000000040000000fc0f00"/192, 0xc0, 0x405000}, {&(0x7f0000010c40)="00000000000000000000000000000000000000000000000000000000d9a1f350", 0x20, 0x405fe0}, {&(0x7f0000010c60)="0000000000000000000001000000010000000002000000010000000003000000001000"/64, 0x40, 0xa00000}, {&(0x7f0000010ca0)="ed410000e8030000e8030000020000000010000000000000020000000000000055ffc65f0000000055ffc65f0000000055ffc65f00000000000000000000000000000000000000000100"/96, 0x60, 0x1000000}, {&(0x7f0000010d00)="0000000000000000001600"/32, 0x20, 0x1000160}, {&(0x7f0000010d20)="00000000000000000300000003000000dd0000000001100000", 0x19, 0x1000fe0}, {&(0x7f0000010d40)="0300000000000000000000000000000000000000000000000000000000000000000003000000010002000000000300000002000200"/64, 0x40, 0x1600000}, {&(0x7f0000010d80)='\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00.\x00\x00\x00\x00\x00\x00\x00..\x00\x00\x00\x00\x00\x00', 0x20, 0x1600940}, {&(0x7f00000101e0)='\x00\x00\x00\x00Linux version 5.10.0-rc6-00193-gdafc6e24daf4 (e@sol) (gcc (GCC) 10.2.0, GNU ld (GNU Binutils) 2.35.1) #1 SMP PREEMPT Mon Nov 30 13:52:38 PST 2020\x00'/160, 0xa0, 0x4000a80}], 0x0, &(0x7f0000000040)=ANY=[@ANYBLOB="5b70ebd4d8b781923800"], 0x0) r1 = syz_open_dev$dmmidi(&(0x7f0000001240), 0x9, 0x4000) r2 = accept4$x25(0xffffffffffffffff, &(0x7f0000001280)={0x9, @remote}, &(0x7f00000012c0)=0x12, 0x800) r3 = getpid() sched_setscheduler(r3, 0x1, &(0x7f0000001700)=0x4) getsockopt$sock_cred(0xffffffffffffffff, 0x1, 0x11, &(0x7f0000001300)={0x0, 0x0, 0x0}, &(0x7f0000001340)=0xc) r5 = openat$ipvs(0xffffffffffffff9c, &(0x7f0000001380)='/proc/sys/net/ipv4/vs/ignore_tunneled\x00', 0x2, 0x0) r6 = syz_init_net_socket$nfc_llcp(0x27, 0x2, 0x1) r7 = openat$pidfd(0xffffffffffffff9c, &(0x7f00000013c0), 0x2001, 0x0) ioctl$TIOCGSID(0xffffffffffffffff, 0x5429, &(0x7f0000001400)=0x0) getresuid(&(0x7f0000001440)=0x0, &(0x7f0000001480), &(0x7f00000014c0)) getresgid(&(0x7f0000000800), &(0x7f00000016c0), &(0x7f00000007c0)=0x0) syz_mount_image$tmpfs(&(0x7f0000000000), &(0x7f0000000080)='./file0\x00', 0x0, 0x0, &(0x7f0000000000), 0x0, &(0x7f0000001980)=ANY=[@ANYBLOB='huge=never,gid=', @ANYRESHEX=r10, @ANYBLOB=',nr_inodes=k,huge=advise,mode=+0000000000000000006103,mode=00000000000000000157407,mpol=default,mode=00000000000000000000002,gid=', @ANYRESHEX=0xee01], 0x0) pipe2$9p(&(0x7f00000001c0)={0xffffffffffffffff, 0xffffffffffffffff}, 0x0) r13 = socket$inet_udplite(0x2, 0x2, 0x88) getsockopt$sock_cred(r13, 0x1, 0x11, &(0x7f0000000240)={0x0, 0x0}, &(0x7f0000000100)=0xc) mount$9p_fd(0x20000000, &(0x7f00000000c0)='./file0\x00', &(0x7f0000000280), 0x0, &(0x7f0000000140)={'trans=fd,', {'rfdno', 0x3d, r11}, 0x2c, {'wfdno', 0x3d, r12}, 0x2c, {[{@dfltuid={'dfltuid', 0x3d, r14}, 0x0}]}}) sendmmsg$unix(0xffffffffffffffff, &(0x7f0000001600)=[{{&(0x7f0000000100)=@abs={0x0, 0x0, 0x4e23}, 0x6e, &(0x7f0000000080)=[{&(0x7f00000005c0)="97a2672bf523ef921263da8b5aea2d6c052bc2bde02e0656cfef5cc46b949a2a05565251077213730c93318ffe54bd1de5aef53704ff8dda55afa6a5644964c0a1e0ff1344bda093768da1bb828425fda9b92f36405fbe5b307c654930408fd2029cbee776c5eadce1b84d4fdbe7ad0c28c288725e1579cbb4723a13fc99704865c91ff183aad79efb7b74734801411ec1e4af5e4f027844952e1bae02ca642ea708af0393a5b3f3f3c1a0af2d89c0560529af65b0756576b8c5493afdb5258ca8d7f3da683e4fc2be6094899880817eafb0b9ce1caf4e43d6c8b0abcc8dd3c8205196bb58d596eca87620f36bf375415307f57bce0d8a1b7f3c", 0xfa}, {&(0x7f00000006c0)="1e263585c3e934808c9054998c98822ab6ebf56fabdbfcd509ebb8818d22a4639e507f6d109dce0ff07e1a52e5a099b32b3d9d509e663250a6b27926f8ae57c414de86efee6791bc7daf6284c9dec363fab87ac42368f18c06d8f440483e2210813789c8cb90eb65ff49efffa38e2372ad445a80001167692adb845edb06bcbcd157e9a5b1f41228c5e73c09362172ca812aa14455355cef17c1bb08ebd8a0d4c0cd86887f805cda45af3b7a45bead6a06", 0xb1}, {&(0x7f0000000180)="84e33b5810d155af768b86860df46a2b0ab68eb55dab48bb7ef5d625961102d10c4991d2cffa2429829b0dc4c58fc87bbe6067acb168ecef714e6cefd1314f0fc441db20b9ae3fe51fd1e94e86692696e709c4965d55dcf29211afa8043dc6a254d3ec0973f568686e1a26837ea24e44d4a6e6366496f9db665ac50d989edc", 0x7f}], 0x3, &(0x7f0000000780)=[@cred={{0x1c, 0x1, 0x2, {0x0, 0x0, 0xee01}}}], 0x20, 0x8001}}, {{0x0, 0x0, &(0x7f00000007c0), 0x0, &(0x7f0000000880)=[@rights={{0x14, 0x1, 0x1, [r0]}}, @rights={{0x24, 0x1, 0x1, [0xffffffffffffffff, r0, r0, 0xffffffffffffffff, r0]}}, @cred={{0x1c, 0x1, 0x2, {0x0, 0xee00}}}, @cred={{0x1c}}, @cred={{0x1c, 0x1, 0x2, {0x0, 0xee00, 0xffffffffffffffff}}}, @rights={{0x14, 0x1, 0x1, [0xffffffffffffffff]}}, @cred={{0x1c, 0x1, 0x2, {0x0, 0xee01}}}], 0xd8, 0x20004014}}, {{0x0, 0x0, &(0x7f0000000a40)=[{&(0x7f0000000980)="3cb12147a7ec68093924bf845f903b2d279927c337708e343b8f590b28aa979ffa92cdb0a31d6352b5710aebf2127af942da14fedf77afe1e173c8b84e0bc5e5f688f9bb226b8f4a4c15edf1bf920efdc66f5bbc3baac133949592b0cdff8c4546c41fe748438a2da5fc5c516220bff26e074f7141fa9451542c1978705ac2fca42deef74c55a98f3c50", 0x8a}], 0x1, &(0x7f0000000a80)=[@rights={{0x2c, 0x1, 0x1, [r0, r0, r0, 0xffffffffffffffff, 0xffffffffffffffff, 0xffffffffffffffff, 0xffffffffffffffff]}}], 0x30, 0x40011}}, {{0x0, 0x0, &(0x7f0000000f00)=[{&(0x7f0000000ac0)="f2909d425ba000e59030f028", 0xc}, {&(0x7f0000000b00)="69614bf52c2160560be87a6091fd6e9aea2cd6f6e09229302361aba1c5a855a587c7b310bbc86641b656735b1eba46fe0eb6dd90463d05a84ad8666f43da5064fe3f9041beef58707292bdca403e213059b3dd95e37b54fe6ccef0ba9f03eee4f095647250d7ce373e8da5164a79c8241d73bfdbe90e12b1d9d45c48dff83c6f78930c1bf0e62d98224e2f1c546c2fe1b1d489a5d2232a4de52ee45c2037626608a59c540014656039235cafc3e700a4dddd433f4bbf2764db7ffc11b023b64b19", 0xc1}, {&(0x7f0000000c00)="86c5d6100ff8bde1e09b9e458b12bf961497274b5c9de30bedab4ba055e301477b243bb613a8ecd0f3e79e9a0fe84d6bb70c6933b7a60bed517dc0beee22485071454bf925523e631aa5e87e97a38d806afe3dff8267f761fa31c8350ca0c65083f9eddc7473599a5b3d6a9f0e19573b7a3a3e4ec1ae2ed9c73b0476db0ed6a3fff58d5f12e4cb8cd2837bf273eb572acd2d17778cde98ab19b4e3bbc1bd4c6ffe360504486a17e8064dc7c958483c43536e78c69d9e755f7629f4ce62c1a57b26d927e83f29faa47400a28ef01d", 0xce}, {&(0x7f0000000d00)="75c340e5fc1faeb2f929267721dcdd0f88ee2d0fcb565a63cb7824eea93def4a9248901dca7a585ca7ad413694c38894c6aba04094ea6feab34065566efebb308b7e912761fcec05a284f25d56d963aac49de145ce033518c34819ad0f0c", 0x5e}, {&(0x7f0000000d80)="97427af9bb46f0ed05bac7e4ce0ef57ccf7bea0ef95cb577f2c4989ce7195b4c7728dc7fff3fd380f9", 0x29}, {&(0x7f0000000dc0)="071589ae818f35e9c3492458cf6e827dd6ac54033de4f30b1d7c6e896875bac293e6b368e2ec48f879b3184c5911696cab18ffa0f573f042d5f3e2d945e454bee1834c2e842260073f29a9884ecee797b32d0228662965f30bdc905bf24e900b58f80cb9b02f1c10fa9419bc2803854051ecb82c8272c0a6993d7fc565a1cd805f7f95b7e635d2a3c75fedd42a82d954b7c05963865bfcff85f55d51af69b9531c8ec719c9871ec2e0c4d224cbcbb5f670ad97a67885749dddca682623b8f96289efa15d24a1df567d5158348335c7e7fbab86d41182102a2b246c7a2950be4a640d527a89d166d7a87e2df091e2980b2419cd1ce0abfbe71faa7f", 0xfb}, {&(0x7f0000000ec0)="49e56b6ddf325d86209960e0", 0xc}], 0x7, &(0x7f0000000fc0)=[@cred={{0x1c, 0x1, 0x2, {0xffffffffffffffff, 0x0, 0xee00}}}], 0x20, 0x80}}, {{0x0, 0x0, &(0x7f00000011c0)=[{&(0x7f0000001000)="0c23785d072d4af31c9b9a9354e5cb30d90a4834b1bc1d5d4a991bc52fa6ef99cb58dd88e13f4b818a2d068a57683a5b71bd5b6eaee83727ef05db9cbf8d6619fbfb0168e847d3334b0772de4ae9c2cf1e3303115be351e1468c94578b336bc1fab7d8", 0x63}, {&(0x7f0000001080)="2dadac2e73146a4ee114d090eb3f26c3b6f65f68cfc513e78c43251a07b2f6976ffc3fdf6626932256eec6f32d8d5a719786be8fb8af6f4151ca0ab413d6ba08e864659e099efe04304b815bfa57a4c50a337502214d66848eefe59f18f9fc39aea09b0ba79be02f0525db32c8775b94b8e079bd2040e557095ec0d1197a48a19cf95ec384e71d8566825e6524dc19f73be04a9340ac304e0d743d89a7345ec2da7b68d234494826cbff68", 0xab}, {&(0x7f0000001140)="2c1623c6c29886a88db09a43239ea3e51bca186ad572759bc56e7a7093f82cd88ff7c9fa031a63ef4da18d922adf3fd8455a3c3b64d3f9e6ba3bfcf08270b5c3fbcefb3b1537506a57fe020f28309c6fbd73e3f2d7b97cd72c7f164406", 0x5d}], 0x3, &(0x7f0000001500)=[@rights={{0x38, 0x1, 0x1, [0xffffffffffffffff, r0, r0, 0xffffffffffffffff, 0xffffffffffffffff, r0, r0, r1, r0, r2]}}, @cred={{0x1c, 0x1, 0x2, {r3, 0xffffffffffffffff, r4}}}, @rights={{0x2c, 0x1, 0x1, [0xffffffffffffffff, r0, r5, r0, r0, r6, r7]}}, @cred={{0x1c, 0x1, 0x2, {r8, r9, r10}}}, @cred={{0x1c, 0x1, 0x2, {0xffffffffffffffff, r14, 0xee01}}}], 0xc8, 0x880}}], 0x5, 0x20000814) 00:03:00 executing program 5: syz_mount_image$reiserfs(&(0x7f0000000000), &(0x7f0000000100)='./file0\x00', 0x8000000, 0x6, &(0x7f0000000200)=[{&(0x7f0000010000)="00400000700200008f3d00000a00000000000000843d000000010000f72a081ce10000001e000000000000000020ec070200010052654973457233467300000003000000020001000000853d0100000003000000000000000000000000000000000000000000000000000000000000000000000001001e006e1f1f63004eed00", 0x80, 0x10000}, {&(0x7f0000010080)="ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00"/1984, 0x7c0, 0x12000}, {&(0x7f0000010840)="ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff", 0x1800, 0x12800}, {&(0x7f0000012040)="0000000000000000000000000a00000000000000843d000000010000f72a081ce10000001e00"/64, 0x40, 0x7b1c000}, {&(0x7f0000012080)="01000200751f0000000000000000000000000000000000000100000002000000000000000000000000002000e01f0000010000000200000001000000f401000002002300bd1f00"/96, 0x60, 0x7b1e000}, {&(0x7f00000120e0)="000000000000000000000000000000000000000000000000000000000001000000010000000200000022000400020000000000000001000000200004002e2e2eed4103008076535f230000006e1f1f636e1f1f636e1f1f6301000000ffffffff", 0x60, 0x7b1ffa0}], 0x0, &(0x7f0000000040)=ANY=[@ANYBLOB="428ed830f9892415"], 0x1) 00:03:00 executing program 1: r0 = syz_open_procfs(0x0, &(0x7f0000000040)='attr/exec\x00') write$sysctl(r0, 0x0, 0x0) r1 = syz_open_procfs(0x0, &(0x7f0000000040)='attr/exec\x00') write$sysctl(r1, 0x0, 0x0) kcmp$KCMP_EPOLL_TFD(0xffffffffffffffff, 0x0, 0x7, 0xffffffffffffffff, &(0x7f0000000080)={r0, r1, 0x4}) syz_mount_image$udf(&(0x7f0000000000), &(0x7f0000000100)='./file0\x00', 0x100000, 0x25, &(0x7f0000000200)=[{&(0x7f00000001c0)="f6f59bd275", 0x5, 0x1}, {&(0x7f0000000dc0)="0501", 0x2, 0x6}, {&(0x7f0000011900)="0700020035000100927f3000e30700000400000005000000002600004d000000001600007500000000e0000090000000001e00000101000000140000f5070000", 0x40, 0x8}, {&(0x7f00000119e0)="002a4c696e757820554446465300000000000000000000000405000000000000", 0x20, 0xff}, {&(0x7f0000000040)="020002002200010076b5f00100010000002000006000000000200000e0070000851febfebe06d2956dac161f473b", 0x2e, 0xa8c}, {&(0x7f0000010000)="0042454130310100"/32, 0x20, 0x8000}, {&(0x7f0000000ac0)="004e535230320100000000000000000000000000000000000000000000000000e68527d15138f260a3fd8f97b67ecd04dd1a83b427f95fe92bf9a2b3ec4cb8e8f3b7f4ac1174bc2658169baf625a246a0f22dafce1b6179e25252a5239bf7bf5a5e2bd290f71bc93cbb456a31d8f792794becccbda497e0c65b2", 0x7a, 0x8800}, {&(0x7f0000010060)="010002001d0001001aaef001600000000100000000000000084c696e757855444600000000000000000000000000000000000000000000090100010002000300010000000100000008313233343536373831323334353637384c696e757855444600"/128, 0x80, 0xc000}, {&(0x7f00000100e0)="0000000000000019004f53544120436f6d7072657373656420556e69636f646500000000000000000000000000000000000000000000000000000000000000000000000000000000004f53544120436f6d7072657373656420556e69636f64650000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002a4c696e7578206d6b756466667320322e33000000000000000000000000000010e607090c0c00354c1256002a4c696e7578205544464653000000000000000000000004050000", 0xe0, 0xc0c0}, {&(0x7f00000101c0)="000000000000000001000000000000000000000000000000000000000000000006000200660001006ba8e8016100000002000000004f53544120436f6d7072657373656420556e69636f646500000000000000000000000000000000000000000000000000000000000000000000000000000000084c696e7578554446000000", 0x80, 0xc1e0}, {&(0x7f0000000b40)="000000000000000000000000000000000000000900020000002a4f5354412055444620436f6d706c69616e74000000005001000000000000000200001000000000000000000000004000000001000000002a4c696e75782055444646530000000000000000000000040500"/128, 0x80, 0xc2c0}, {&(0x7f00000102c0)="00000000000000000000000000000000002000008000000002400000002a554446205370617261626c6520506172746974696f6e500104050000000001000000200002003801000070000000f007000000000000000000000000000000000000050002007e000100879cf001620000000300000001000000002b4e53523032000000000000000000000000000000000000000000000000000000000000000000000200"/192, 0xc0, 0xc3a0}, {&(0x7f0000010380)="0000000000000000000000000000000000000000000000000400000010050000d0020000002a4c696e7578205544464653000000000000000000000004050000", 0x40, 0xc4a0}, {&(0x7f00000103c0)="07000200ae000100927f3000630000000400000005000000002600004d000000001600007500000000e0000090000000001e00000101000000140000f5070000", 0x40, 0xc600}, {&(0x7f0000010480)='\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\t\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\b\x00', 0x20, 0xc8e4}, {&(0x7f00000104c0)="0800020061e400000000f0016500"/32, 0x20, 0xca00}, {&(0x7f00000104e0)="000002009100010021d4280170000000002a5544462053706172696e67205461626c650000000000500104050000feff1f00000000000000ffffffff10010000ffffffff30010000ffffffff50010000ffffffff70010000ffffffff90010000ffffffffb0010000ffffffffd0010000fffffffff0010000ffffffff10020000ffffffff30020000ffffffff50020000ffffffff70020000ffffffff90020000ffffffffb0020000ffffffffd0020000fffffffff0020000ffffffff10130000ffffffff30030000ffffffff50030000ffffffff70030000ffffffff90030000ffffffffb0030000ffffffffd0030000fffffffff0030000ffffffff10040000ffffffff30040000ffffff2051040000ffffffff70040400ffffffff90040000ffffffffb1040000ffffffffd0040000fffffffff00400"/320, 0x140, 0xe000}, {&(0x7f0000010620)="09000200d70001000acb7600800000000010e607090c0c00355f4d010100000000000000000000001800000000000000000000000000000000000000000000000000000000000000010000002e000000b0020000d0020000002a4c696e757820554446465300000000000000000000000405000000000000060000000200000050015001010200"/160, 0xa0, 0x10000}, {&(0x7f00000106c0)="080002007d0001000000f0018100"/32, 0x20, 0x10201}, {&(0x7f0000000580)="0501020052000100beaba0004000000000000000040000000100000500000000000000040000000000000000a57c00000100000000000000000000000000000000000000000000000010e607090c0c00354c12560010e607090c0c00354c12560010e607090c0c00354c12560100000000000000000000000000000000000000002a4c696e7578205544464653000000000000000000000004050000000000001000"/192, 0xc0, 0xa1ffe}, {&(0x7f0000010780)="0001020037000100bb77f001100000000010e607090c0c00354c12560300030001000000010000000000000000000000004f53544120436f6d7072657373656420556e69636f646500000000000000000000000000000000000000000000000000000000000000000000000000000000084c696e757855444600000000000000", 0x80, 0xa4000}, {&(0x7f0000010800)="00000000000000000000000000000009004f53544120436f6d7072657373656420556e69636f646500000000000000000000000000000000000000000000000000000000000000000000000000000000084c696e7578554446000000000000000000000000000000000000000000000908436f707972696768740000000000000000000000000000000000000000000a084162737472616374000000000000000000000000000000000000000000000900020000200000000000000000000000002a4f5354412055444620436f6d706c69616e74000000005001000000000000", 0xe0, 0xa40e0}, {&(0x7f00000108e0)="050102007c000100e5c6a8002000000000000000040000000100000400000000000000000000000000000000a53c00000200000000000000440100000000000001000000000000000010e607090c0c00354c12560010e607090c0c00355e59530010e607090c0c00355e59530100000000000000000000000000000000000000002a4c696e75782055444646530000000000000000000000040500000000000000000000000000000000000008000000440100003000"/192, 0xc0, 0xa6000}, {&(0x7f00000109a0)="05010200e4000100009920012100000000000000040000000100000400000000000003000000000000000000a57c00000100000000000000800000000000000000000000000000000010e607090c0c00355e59530010e607090c0c00355e59530010e607090c0c00355e59530100000000000000000000000000000000000000002a4c696e7578205544464653000000000000000000000004050000000000001100000000000000000000008000000001010200b10001001b5818002100000001000a000002000020000000000000000000000000000000010102004b00010059b01c0021000000010000060002000022000000000000001200000000000866696c65300101020078000100c1751c0021000000010000060002000026000000000000001300000000000866696c653100"/320, 0x140, 0xa6200}, {&(0x7f0000000ec0)="050102003a00010060ffb0002200000000000000040000000100000500000000000001000000000000000000a57c000001000000000000001a0400000000000003000000000000000010e607090c0c00355e59530010e607090c0c00355e59530010e607090c0c00355e59530100000000000000000000000000000000000000002a4c696e757820554446465300000000000000000000000405000000000000120000000000000000000000100000001a0400002300000000000000000000002a45b58d713cad61e7dab36b5e8959ad96994d6085abb47ce917bc94880aa00742f3855b9ccb18059562a101f4e75933c6193af916d81015a92428ffd390aefc4db306b3e4962dde7f8fd647a9634ce65ff9c98875f692fa9b6252d64aade0a52ff67dbf3c4346262674d552c49d391385d185", 0x133, 0xa6400}, {&(0x7f0000010ba0)='syzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkal\x00\x00\x00\x00\x00\x00', 0x420, 0xa6600}, {&(0x7f0000011180)="05010200000001009d72c0002800000000000500000000000000000500000000000001000000000000000000a57c00000200000000000000282300000000000012000000000000000010e607090c0c00355e59530010e607090c0c00355e59530010e607090c0c00355e59530100000000000000000039e8a954000000000000002a4c696e75782055444646530000000000000000000000040500000000000015000000000000000000000020000000000e0000290000000000000000000000281500003100"/224, 0xe0, 0xa7000}, {&(0x7f0000000640)="01010200c00001001b5818003000000001000a00000200002000000000000000000000000000000001010200c40001007ae92c003000000001000116000200004000000000000000100000000000084e6f6e2d416c6c6f63617461626c6520537061636501010200e4000100f0a31c00300000000100020600020000210000000d0000001100000000000866696c653001010200d200010039481c0030000000010000060002000027000000000000001400000000000866696c6531010102002e0001008f4e1c0030000000010000060002000028000000000000001500000000000866696c653201010200dd000100315b1c0030000000010000060002000028000000000000001600000000000866696c653301010200e7000100f79b2000300000000100000a000200003c000000000000001700000000000866696c652e636f6c6400"/352, 0x160, 0xa8000}, {&(0x7f00000113c0)="05010200c90001004b3404013c00000000000000040000000100000500000000000003000000000000000000a57c000001000000640000000000000000000000000000000010e607090c0c00355e59530010e607090c0c00355e59530010e607090c0c00355e59530100000000000000000000000000000000000000002a4c696e7578205544464653000000000000000000000004050000000000001700000000000000000000006400000073797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6cff7273797a6b616c6c657273797a6b616c6c65727300"/284, 0x11c, 0xa9800}, {&(0x7f0000000cc0)="01000200a40001001aaef001e00700000100000000000000084c696e75785544460000000000000000000000000000000000010002000300010000000100000008313233343536373831323334353637384c696e75785544460000000000000000000000000000000000000000000000000000000000000099ba5e04e45b4d989aa1c1f08d8fb273e4d8f842e3deeed757eab71508d863d7f8c57f1b4b42e1fca7db856b4577f7519ad6996e31ff8acc65f87b0a667c5d221f9a6bd53078564c", 0xc0, 0xfc000}, {&(0x7f0000000bc0)="0000000000000019004f53544121436f6d7072657373656420556e69636f646500000000000000000000000000000200000000000000000000000000000000000000000000000000004f53544120436f6d7072657373656420556e69636f64650000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002a4c01000100206d6b756466667320322e33000000000000000000000000000010e607090c0c00354c1256002a4c6900000000000000040500"/224, 0xe0, 0xfc0c0}, {&(0x7f00000007c0)="190000000000000000000000000000000000000900020002002a4f5354412055444620436f6d706c69616e740000000050010000000000000002000010000000000001000000000000005025f74000000001000000002a4c696e7578205544464653000000000000000000000004050000000000000000000000000000000000c0a19d095286d8962c9d3c49a1e6ab5fc1a748d4e37345d5b16d7b7740cc1a10cc570749d073ac380d464879a0c80c6c9e6b55ae44c566b9a7ce5a7f4580dcf46b0e74a9d79c031d4eb80d929765ef282d4e67a8ffbc846db8591b4eb0", 0xdd, 0xfc2c0}, {&(0x7f0000000980)="00000000000000000000000000000000002000008000000002400000002a554446205370617261626c6520506172746974696f6e500104050000000001000000200002003801000070000000f0070000000000000000000000000000000000000500020005000100879cf001e20700000300000001000000002b4e53523032000000000000000000000000000000000000000000000000000000000000000000000200"/192, 0xc0, 0xfc3a0}, {&(0x7f00000118c0)="0000000000000000000000000000000000000000000000000400000010050000d0020000002a4c696e7578205544464653000000000000000000000004050000", 0x40, 0xfc4a3}, {&(0x7f00000119c0)='\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\t\x00'/32, 0x20, 0xfc8e0}, {&(0x7f0000001100)="000002001800010021d42801f0070000002a5544462053706172696e67205461626c65000000000050010405000000002000ffffffff10010000ffffffff30010000ffffffff50010000ffffffff70010000ffffffff90010000ffffffffb0010000ffffffffd0010000fffffffff0010000ffffffff10020000ffffffff30020000ffffffff50020000ffffffff70020000ffffffff90020000ffffffff80020000ffffffffd0020000fffffffff0020000ffffffff10030000ffffffff30030000ffffffff50030000ffffffff70030000ffffffff90030000ffffffffb0030000ffffffffd0030000fffffffff0030000ffffffff10040000ffffffff30040000ffffffff50040000ffffffff70040000ffffffff90040000ffffffffb0040000ffffffffd0040000fffffffff004000000000000000000000000000000008c58769b598272941536357f7851ad688bfec95b2f6d5a182b2d113cb5590d413bf2b9ca14ed8fd0e9125b4f6d385dfae4aa0678d4b43c08b96d53cf2120846ef58a6396af12e1243e1898651a13b600d049260b2adb3c3f4e5f64c4d1aed5e362426701", 0x1a4, 0xfe000}, {&(0x7f0000011b60)="020002002700010076b5f001ff070000002000006000000000200000e0070000", 0x20, 0xffe00}], 0x1000008, &(0x7f0000000e00)=ANY=[@ANYBLOB='umask=00000000000000000000314,anchor=00000000000000002047,uid=ignore,unhide,gid=forget,nostrict,fileset=00000000000000032767,iocharset=cp861,gid=', @ANYRESDEC=0x0, @ANYBLOB="00000000000000bb40118d07"], 0x1) openat$cgroup_ro(0xffffffffffffff9c, &(0x7f00000001c0)='memory.current\x00', 0x275a, 0x0) [ 180.947991][ T7128] loop1: detected capacity change from 0 to 2048 [ 180.950020][ T7130] loop5: detected capacity change from 0 to 262144 [ 180.970224][ T7128] UDF-fs: INFO Mounting volume 'LinuxUDF', timestamp 2022/09/12 12:00 (1000) 00:03:00 executing program 4: r0 = socket$inet_tcp(0x2, 0x1, 0x0) bind$inet(r0, &(0x7f0000000100)={0x2, 0x4e20, @multicast2}, 0x62) setsockopt$inet_tcp_TCP_CONGESTION(r0, 0x6, 0xd, &(0x7f00000000c0)='htcp\x00', 0x5) setsockopt$inet_tcp_int(r0, 0x6, 0x2, 0x0, 0x0) r1 = openat(0xffffffffffffffff, &(0x7f00000002c0)='/proc/self/exe\x00', 0x0, 0x0) r2 = syz_open_procfs(0x0, &(0x7f0000000040)='attr/exec\x00') write$sysctl(r2, 0x0, 0x0) r3 = syz_open_procfs(0x0, &(0x7f0000000040)='attr/exec\x00') write$sysctl(r3, 0x0, 0x0) sendfile(r2, r3, &(0x7f0000000000)=0x6, 0x2) setsockopt$SO_ATTACH_FILTER(r0, 0x1, 0x1a, &(0x7f0000000300)={0x1, &(0x7f00000001c0)=[{0x6, 0x0, 0x0, 0x3654}]}, 0x10) connect$inet(r0, &(0x7f0000000180)={0x2, 0x4e20, @loopback}, 0x10) sendfile(r0, r1, 0x0, 0x101000011) recvmsg(r0, &(0x7f0000000580)={0x0, 0x41, &(0x7f0000000500)=[{&(0x7f0000000740)=""/4084, 0xfffffe1f}], 0x6, 0x0, 0xfffffffffffffcc9}, 0x700) [ 180.994890][ T7130] REISERFS warning (device loop5): super-6502 reiserfs_getopt: unknown mount option "BŽØ0ù‰$" 00:03:00 executing program 0: socketpair$unix(0x1, 0x0, 0x0, 0x0) recvmmsg(0xffffffffffffffff, 0x0, 0x0, 0x0, 0x0) r0 = syz_mount_image$f2fs(&(0x7f0000000000), &(0x7f00000000c0)='./file0\x00', 0x4000b20, 0x26, &(0x7f0000000200)=[{&(0x7f0000010000)="1020f5f201000e0009000000030000000c000000090000000100000001000000000000000040000000000000180000001f0000000200000002000000020000000100000018000000000200000002000000060000000a0000000e000000100000030000000100000002000000a3bd865da4e84b259caac903308887eb00000000", 0x80, 0x400}, {&(0x7f0000010080)='\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00$\x00\x00\x00mp\x00\x00\x00\x00\x00\x00wm\x00\x00\x00\x00\x00\x00og\x00\x00\x00\x00\x00\x00jp\x00\x00\x00\x00\x00\x00avi\x00\x00\x00\x00\x00m4v\x00\x00\x00\x00\x00m4p\x00\x00\x00\x00\x00mkv\x00\x00\x00\x00\x00mov\x00\x00\x00\x00\x00webm\x00\x00\x00\x00wav\x00\x00\x00\x00\x00m4a\x00\x00\x00\x00\x003gp\x00\x00\x00\x00\x00opus\x00\x00\x00\x00flac\x00\x00\x00\x00gif\x00\x00\x00\x00\x00png\x00\x00\x00\x00\x00svg\x00\x00\x00\x00\x00webp\x00\x00\x00\x00jar\x00\x00\x00\x00\x00deb\x00\x00\x00\x00\x00iso\x00\x00\x00\x00\x00gz\x00\x00\x00\x00\x00\x00xz\x00\x00\x00\x00\x00\x00zst\x00\x00\x00\x00\x00pdf\x00\x00\x00\x00\x00pyc\x00\x00\x00\x00\x00ttc\x00\x00\x00\x00\x00ttf\x00\x00\x00\x00\x00exe\x00\x00\x00\x00\x00apk\x00\x00\x00\x00\x00cnt\x00\x00\x00\x00\x00exo\x00\x00\x00\x00\x00odex\x00\x00\x00\x00vdex\x00\x00\x00\x00so\x00\x00\x00\x00\x00\x00db\x00'/352, 0x160, 0x860}, {&(0x7f0000010280)='\x00\x00\x00\x00Linux version 5.10.0-rc6-00193-gdafc6e24daf4 (e@sol) (gcc (GCC) 10.2.0, GNU ld (GNU Binutils) 2.35.1) #1 SMP PREEMPT Mon Nov 30 13:52:38 PST 2020\x00'/160, 0xa0, 0xb80}, {&(0x7f0000010320)="000000000100"/32, 0x20, 0xc80}, {&(0x7f0000010340)="00000000000100"/32, 0x20, 0xec0}, {&(0x7f0000010360)="1020f5f201000e0009000000030000000c000000090000000100000001000000000000000040000000000000180000001f0000000200000002000000020000000100000018000000000200000002000000060000000a0000000e000000100000030000000100000002000000a3bd865da4e84b259caac903308887eb00000000", 0x80, 0x1400}, {&(0x7f00000103e0)='\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00$\x00\x00\x00mp\x00\x00\x00\x00\x00\x00wm\x00\x00\x00\x00\x00\x00og\x00\x00\x00\x00\x00\x00jp\x00\x00\x00\x00\x00\x00avi\x00\x00\x00\x00\x00m4v\x00\x00\x00\x00\x00m4p\x00\x00\x00\x00\x00mkv\x00\x00\x00\x00\x00mov\x00\x00\x00\x00\x00webm\x00\x00\x00\x00wav\x00\x00\x00\x00\x00m4a\x00\x00\x00\x00\x003gp\x00\x00\x00\x00\x00opus\x00\x00\x00\x00flac\x00\x00\x00\x00gif\x00\x00\x00\x00\x00png\x00\x00\x00\x00\x00svg\x00\x00\x00\x00\x00webp\x00\x00\x00\x00jar\x00\x00\x00\x00\x00deb\x00\x00\x00\x00\x00iso\x00\x00\x00\x00\x00gz\x00\x00\x00\x00\x00\x00xz\x00\x00\x00\x00\x00\x00zst\x00\x00\x00\x00\x00pdf\x00\x00\x00\x00\x00pyc\x00\x00\x00\x00\x00ttc\x00\x00\x00\x00\x00ttf\x00\x00\x00\x00\x00exe\x00\x00\x00\x00\x00apk\x00\x00\x00\x00\x00cnt\x00\x00\x00\x00\x00exo\x00\x00\x00\x00\x00odex\x00\x00\x00\x00vdex\x00\x00\x00\x00so\x00\x00\x00\x00\x00\x00db\x00'/352, 0x160, 0x1860}, {&(0x7f0000010540)='\x00\x00\x00\x00Linux version 5.10.0-rc6-00193-gdafc6e24daf4 (e@sol) (gcc (GCC) 10.2.0, GNU ld (GNU Binutils) 2.35.1) #1 SMP PREEMPT Mon Nov 30 13:52:38 PST 2020\x00'/160, 0xa0, 0x1a80}, {&(0x7f00000105e0)='\x00\x00\x00\x00Linux version 5.10.0-rc6-00193-gdafc6e24daf4 (e@sol) (gcc (GCC) 10.2.0, GNU ld (GNU Binutils) 2.35.1) #1 SMP PREEMPT Mon Nov 30 13:52:38 PST 2020\x00'/160, 0xa0, 0x1b80}, {&(0x7f0000010680)="000000000100"/32, 0x20, 0x1c80}, {&(0x7f00000106a0)="00000000000100"/32, 0x20, 0x1ec0}, {&(0x7f00000106c0)="0bd03b7500000000001000000000000002000000000000000d0000001000000012000000000000000100000002000000ffffffffffffffffffffffffffffffffffffffff01000000000000000000000000000000030000000b00000005000000ffffffffffffffffffffffffffffffffffffffff010000000000000000000000000000008501000006000000010000000100000001000000040000004000000040000000fc0f00"/192, 0xc0, 0x200000}, {&(0x7f0000010780)="00000000000000000000000000000000000000000000000000000000d9fa28d50100030000000003000000001000"/64, 0x40, 0x200fe0}, {&(0x7f00000107c0)="000000000000000000000000000000000000000000000000000000060000000000010c8000"/64, 0x40, 0x2011e0}, {&(0x7f0000010800)="000000000000000000000001000000001000"/32, 0x20, 0x201240}, {&(0x7f0000010820)="0000000000000000000000af2c787bda05ef2500000000140000000000000000", 0x20, 0x201280}, {&(0x7f0000010840)="000000000000000300000001008000"/32, 0x20, 0x2012e0}, {&(0x7f0000010860)="0000000000000000000000000000000000000000000b00000000040000000000", 0x20, 0x201320}, {&(0x7f0000010880)="00000005000000000800"/32, 0x20, 0x201380}, {&(0x7f00000108a0)="0000000000000000000000000000000000000000000003000000000000000000", 0x20, 0x2013e0}, {&(0x7f00000108c0)="0300"/32, 0x20, 0x202002}, {&(0x7f00000108e0)="000000000000002300000000001be5865f0fffffc21c8bf30000200000000000", 0x20, 0x202fe0}, {&(0x7f0000010900)="0000000000000000000000000000000000000000000000000000000100000000", 0x20, 0x203fe0}, {&(0x7f0000010920)="00000000000000000000000000000000000000000000000000000001000000000bd03b7500000000001000000000000002000000000000000d0000001000000012000000000000000100000002000000ffffffffffffffffffffffffffffffffffffffff01000000000000000000000000000000030000000b00000005000000ffffffffffffffffffffffffffffffffffffffff010000000000000000000000000000008501000006000000010000000100000001000000040000004000000040000000fc0f00"/224, 0xe0, 0x204fe0}, {&(0x7f0000010a00)="00000000000000000000000000000000000000000000000000000000d9fa28d5", 0x20, 0x205fe0}, {&(0x7f0000010a20)="0bd03b75d9fa28d500"/32, 0x20, 0x3ff000}, {&(0x7f0000010a40)="0000000000000000feffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00"/96, 0x60, 0x3ff040}, {&(0x7f0000010aa0)="0000000000000000001000000000000002000000000000000d0000001000000012000000000000000100000002000000ffffffffffffffffffffffffffffffffffffffff01000000000000000000000000000000030000000b00000005000000ffffffffffffffffffffffffffffffffffffffff010000000000000000000000000000008501000006000000010000000100000001000000040000004000000040000000fc0f00"/192, 0xc0, 0x400000}, {&(0x7f0000010b60)="00000000000000000000000000000000000000000000000000000000d9a1f350", 0x20, 0x400fe0}, {&(0x7f0000010b80)="0000000000000000001000000000000002000000000000000d0000001000000012000000000000000100000002000000ffffffffffffffffffffffffffffffffffffffff01000000000000000000000000000000030000000b00000005000000ffffffffffffffffffffffffffffffffffffffff010000000000000000000000000000008501000006000000010000000100000001000000040000004000000040000000fc0f00"/192, 0xc0, 0x405000}, {&(0x7f0000010c40)="00000000000000000000000000000000000000000000000000000000d9a1f350", 0x20, 0x405fe0}, {&(0x7f0000010c60)="0000000000000000000001000000010000000002000000010000000003000000001000"/64, 0x40, 0xa00000}, {&(0x7f0000010ca0)="ed410000e8030000e8030000020000000010000000000000020000000000000055ffc65f0000000055ffc65f0000000055ffc65f00000000000000000000000000000000000000000100"/96, 0x60, 0x1000000}, {&(0x7f0000010d00)="0000000000000000001600"/32, 0x20, 0x1000160}, {&(0x7f0000010d20)="00000000000000000300000003000000dd0000000001100000", 0x19, 0x1000fe0}, {&(0x7f0000010d40)="0300000000000000000000000000000000000000000000000000000000000000000003000000010002000000000300000002000200"/64, 0x40, 0x1600000}, {&(0x7f0000010d80)='\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00.\x00\x00\x00\x00\x00\x00\x00..\x00\x00\x00\x00\x00\x00', 0x20, 0x1600940}, {&(0x7f00000101e0)='\x00\x00\x00\x00Linux version 5.10.0-rc6-00193-gdafc6e24daf4 (e@sol) (gcc (GCC) 10.2.0, GNU ld (GNU Binutils) 2.35.1) #1 SMP PREEMPT Mon Nov 30 13:52:38 PST 2020\x00'/160, 0xa0, 0x4000a80}], 0x0, &(0x7f0000000040)=ANY=[@ANYBLOB="5b70ebd4d8b781923800"], 0x0) r1 = syz_open_dev$dmmidi(&(0x7f0000001240), 0x9, 0x4000) r2 = accept4$x25(0xffffffffffffffff, &(0x7f0000001280)={0x9, @remote}, &(0x7f00000012c0)=0x12, 0x800) r3 = getpid() sched_setscheduler(r3, 0x1, &(0x7f0000001700)=0x4) getsockopt$sock_cred(0xffffffffffffffff, 0x1, 0x11, &(0x7f0000001300)={0x0, 0x0, 0x0}, &(0x7f0000001340)=0xc) r5 = openat$ipvs(0xffffffffffffff9c, &(0x7f0000001380)='/proc/sys/net/ipv4/vs/ignore_tunneled\x00', 0x2, 0x0) r6 = syz_init_net_socket$nfc_llcp(0x27, 0x2, 0x1) r7 = openat$pidfd(0xffffffffffffff9c, &(0x7f00000013c0), 0x2001, 0x0) ioctl$TIOCGSID(0xffffffffffffffff, 0x5429, &(0x7f0000001400)=0x0) getresuid(&(0x7f0000001440)=0x0, &(0x7f0000001480), &(0x7f00000014c0)) getresgid(&(0x7f0000000800), &(0x7f00000016c0), &(0x7f00000007c0)=0x0) syz_mount_image$tmpfs(&(0x7f0000000000), &(0x7f0000000080)='./file0\x00', 0x0, 0x0, &(0x7f0000000000), 0x0, &(0x7f0000001980)=ANY=[@ANYBLOB='huge=never,gid=', @ANYRESHEX=r10, @ANYBLOB=',nr_inodes=k,huge=advise,mode=+0000000000000000006103,mode=00000000000000000157407,mpol=default,mode=00000000000000000000002,gid=', @ANYRESHEX=0xee01], 0x0) pipe2$9p(&(0x7f00000001c0)={0xffffffffffffffff, 0xffffffffffffffff}, 0x0) r13 = socket$inet_udplite(0x2, 0x2, 0x88) getsockopt$sock_cred(r13, 0x1, 0x11, &(0x7f0000000240)={0x0, 0x0}, &(0x7f0000000100)=0xc) mount$9p_fd(0x20000000, &(0x7f00000000c0)='./file0\x00', &(0x7f0000000280), 0x0, &(0x7f0000000140)={'trans=fd,', {'rfdno', 0x3d, r11}, 0x2c, {'wfdno', 0x3d, r12}, 0x2c, {[{@dfltuid={'dfltuid', 0x3d, r14}, 0x0}]}}) sendmmsg$unix(0xffffffffffffffff, &(0x7f0000001600)=[{{&(0x7f0000000100)=@abs={0x0, 0x0, 0x4e23}, 0x6e, &(0x7f0000000080)=[{&(0x7f00000005c0)="97a2672bf523ef921263da8b5aea2d6c052bc2bde02e0656cfef5cc46b949a2a05565251077213730c93318ffe54bd1de5aef53704ff8dda55afa6a5644964c0a1e0ff1344bda093768da1bb828425fda9b92f36405fbe5b307c654930408fd2029cbee776c5eadce1b84d4fdbe7ad0c28c288725e1579cbb4723a13fc99704865c91ff183aad79efb7b74734801411ec1e4af5e4f027844952e1bae02ca642ea708af0393a5b3f3f3c1a0af2d89c0560529af65b0756576b8c5493afdb5258ca8d7f3da683e4fc2be6094899880817eafb0b9ce1caf4e43d6c8b0abcc8dd3c8205196bb58d596eca87620f36bf375415307f57bce0d8a1b7f3c", 0xfa}, {&(0x7f00000006c0)="1e263585c3e934808c9054998c98822ab6ebf56fabdbfcd509ebb8818d22a4639e507f6d109dce0ff07e1a52e5a099b32b3d9d509e663250a6b27926f8ae57c414de86efee6791bc7daf6284c9dec363fab87ac42368f18c06d8f440483e2210813789c8cb90eb65ff49efffa38e2372ad445a80001167692adb845edb06bcbcd157e9a5b1f41228c5e73c09362172ca812aa14455355cef17c1bb08ebd8a0d4c0cd86887f805cda45af3b7a45bead6a06", 0xb1}, {&(0x7f0000000180)="84e33b5810d155af768b86860df46a2b0ab68eb55dab48bb7ef5d625961102d10c4991d2cffa2429829b0dc4c58fc87bbe6067acb168ecef714e6cefd1314f0fc441db20b9ae3fe51fd1e94e86692696e709c4965d55dcf29211afa8043dc6a254d3ec0973f568686e1a26837ea24e44d4a6e6366496f9db665ac50d989edc", 0x7f}], 0x3, &(0x7f0000000780)=[@cred={{0x1c, 0x1, 0x2, {0x0, 0x0, 0xee01}}}], 0x20, 0x8001}}, {{0x0, 0x0, &(0x7f00000007c0), 0x0, &(0x7f0000000880)=[@rights={{0x14, 0x1, 0x1, [r0]}}, @rights={{0x24, 0x1, 0x1, [0xffffffffffffffff, r0, r0, 0xffffffffffffffff, r0]}}, @cred={{0x1c, 0x1, 0x2, {0x0, 0xee00}}}, @cred={{0x1c}}, @cred={{0x1c, 0x1, 0x2, {0x0, 0xee00, 0xffffffffffffffff}}}, @rights={{0x14, 0x1, 0x1, [0xffffffffffffffff]}}, @cred={{0x1c, 0x1, 0x2, {0x0, 0xee01}}}], 0xd8, 0x20004014}}, {{0x0, 0x0, &(0x7f0000000a40)=[{&(0x7f0000000980)="3cb12147a7ec68093924bf845f903b2d279927c337708e343b8f590b28aa979ffa92cdb0a31d6352b5710aebf2127af942da14fedf77afe1e173c8b84e0bc5e5f688f9bb226b8f4a4c15edf1bf920efdc66f5bbc3baac133949592b0cdff8c4546c41fe748438a2da5fc5c516220bff26e074f7141fa9451542c1978705ac2fca42deef74c55a98f3c50", 0x8a}], 0x1, &(0x7f0000000a80)=[@rights={{0x2c, 0x1, 0x1, [r0, r0, r0, 0xffffffffffffffff, 0xffffffffffffffff, 0xffffffffffffffff, 0xffffffffffffffff]}}], 0x30, 0x40011}}, {{0x0, 0x0, &(0x7f0000000f00)=[{&(0x7f0000000ac0)="f2909d425ba000e59030f028", 0xc}, {&(0x7f0000000b00)="69614bf52c2160560be87a6091fd6e9aea2cd6f6e09229302361aba1c5a855a587c7b310bbc86641b656735b1eba46fe0eb6dd90463d05a84ad8666f43da5064fe3f9041beef58707292bdca403e213059b3dd95e37b54fe6ccef0ba9f03eee4f095647250d7ce373e8da5164a79c8241d73bfdbe90e12b1d9d45c48dff83c6f78930c1bf0e62d98224e2f1c546c2fe1b1d489a5d2232a4de52ee45c2037626608a59c540014656039235cafc3e700a4dddd433f4bbf2764db7ffc11b023b64b19", 0xc1}, {&(0x7f0000000c00)="86c5d6100ff8bde1e09b9e458b12bf961497274b5c9de30bedab4ba055e301477b243bb613a8ecd0f3e79e9a0fe84d6bb70c6933b7a60bed517dc0beee22485071454bf925523e631aa5e87e97a38d806afe3dff8267f761fa31c8350ca0c65083f9eddc7473599a5b3d6a9f0e19573b7a3a3e4ec1ae2ed9c73b0476db0ed6a3fff58d5f12e4cb8cd2837bf273eb572acd2d17778cde98ab19b4e3bbc1bd4c6ffe360504486a17e8064dc7c958483c43536e78c69d9e755f7629f4ce62c1a57b26d927e83f29faa47400a28ef01d", 0xce}, {&(0x7f0000000d00)="75c340e5fc1faeb2f929267721dcdd0f88ee2d0fcb565a63cb7824eea93def4a9248901dca7a585ca7ad413694c38894c6aba04094ea6feab34065566efebb308b7e912761fcec05a284f25d56d963aac49de145ce033518c34819ad0f0c", 0x5e}, {&(0x7f0000000d80)="97427af9bb46f0ed05bac7e4ce0ef57ccf7bea0ef95cb577f2c4989ce7195b4c7728dc7fff3fd380f9", 0x29}, {&(0x7f0000000dc0)="071589ae818f35e9c3492458cf6e827dd6ac54033de4f30b1d7c6e896875bac293e6b368e2ec48f879b3184c5911696cab18ffa0f573f042d5f3e2d945e454bee1834c2e842260073f29a9884ecee797b32d0228662965f30bdc905bf24e900b58f80cb9b02f1c10fa9419bc2803854051ecb82c8272c0a6993d7fc565a1cd805f7f95b7e635d2a3c75fedd42a82d954b7c05963865bfcff85f55d51af69b9531c8ec719c9871ec2e0c4d224cbcbb5f670ad97a67885749dddca682623b8f96289efa15d24a1df567d5158348335c7e7fbab86d41182102a2b246c7a2950be4a640d527a89d166d7a87e2df091e2980b2419cd1ce0abfbe71faa7f", 0xfb}, {&(0x7f0000000ec0)="49e56b6ddf325d86209960e0", 0xc}], 0x7, &(0x7f0000000fc0)=[@cred={{0x1c, 0x1, 0x2, {0xffffffffffffffff, 0x0, 0xee00}}}], 0x20, 0x80}}, {{0x0, 0x0, &(0x7f00000011c0)=[{&(0x7f0000001000)="0c23785d072d4af31c9b9a9354e5cb30d90a4834b1bc1d5d4a991bc52fa6ef99cb58dd88e13f4b818a2d068a57683a5b71bd5b6eaee83727ef05db9cbf8d6619fbfb0168e847d3334b0772de4ae9c2cf1e3303115be351e1468c94578b336bc1fab7d8", 0x63}, {&(0x7f0000001080)="2dadac2e73146a4ee114d090eb3f26c3b6f65f68cfc513e78c43251a07b2f6976ffc3fdf6626932256eec6f32d8d5a719786be8fb8af6f4151ca0ab413d6ba08e864659e099efe04304b815bfa57a4c50a337502214d66848eefe59f18f9fc39aea09b0ba79be02f0525db32c8775b94b8e079bd2040e557095ec0d1197a48a19cf95ec384e71d8566825e6524dc19f73be04a9340ac304e0d743d89a7345ec2da7b68d234494826cbff68", 0xab}, {&(0x7f0000001140)="2c1623c6c29886a88db09a43239ea3e51bca186ad572759bc56e7a7093f82cd88ff7c9fa031a63ef4da18d922adf3fd8455a3c3b64d3f9e6ba3bfcf08270b5c3fbcefb3b1537506a57fe020f28309c6fbd73e3f2d7b97cd72c7f164406", 0x5d}], 0x3, &(0x7f0000001500)=[@rights={{0x38, 0x1, 0x1, [0xffffffffffffffff, r0, r0, 0xffffffffffffffff, 0xffffffffffffffff, r0, r0, r1, r0, r2]}}, @cred={{0x1c, 0x1, 0x2, {r3, 0xffffffffffffffff, r4}}}, @rights={{0x2c, 0x1, 0x1, [0xffffffffffffffff, r0, r5, r0, r0, r6, r7]}}, @cred={{0x1c, 0x1, 0x2, {r8, r9, r10}}}, @cred={{0x1c, 0x1, 0x2, {0xffffffffffffffff, r14, 0xee01}}}], 0xc8, 0x880}}], 0x5, 0x20000814) socketpair$unix(0x1, 0x0, 0x0, 0x0) (async) recvmmsg(0xffffffffffffffff, 0x0, 0x0, 0x0, 0x0) (async) syz_mount_image$f2fs(&(0x7f0000000000), &(0x7f00000000c0)='./file0\x00', 0x4000b20, 0x26, &(0x7f0000000200)=[{&(0x7f0000010000)="1020f5f201000e0009000000030000000c000000090000000100000001000000000000000040000000000000180000001f0000000200000002000000020000000100000018000000000200000002000000060000000a0000000e000000100000030000000100000002000000a3bd865da4e84b259caac903308887eb00000000", 0x80, 0x400}, {&(0x7f0000010080)='\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00$\x00\x00\x00mp\x00\x00\x00\x00\x00\x00wm\x00\x00\x00\x00\x00\x00og\x00\x00\x00\x00\x00\x00jp\x00\x00\x00\x00\x00\x00avi\x00\x00\x00\x00\x00m4v\x00\x00\x00\x00\x00m4p\x00\x00\x00\x00\x00mkv\x00\x00\x00\x00\x00mov\x00\x00\x00\x00\x00webm\x00\x00\x00\x00wav\x00\x00\x00\x00\x00m4a\x00\x00\x00\x00\x003gp\x00\x00\x00\x00\x00opus\x00\x00\x00\x00flac\x00\x00\x00\x00gif\x00\x00\x00\x00\x00png\x00\x00\x00\x00\x00svg\x00\x00\x00\x00\x00webp\x00\x00\x00\x00jar\x00\x00\x00\x00\x00deb\x00\x00\x00\x00\x00iso\x00\x00\x00\x00\x00gz\x00\x00\x00\x00\x00\x00xz\x00\x00\x00\x00\x00\x00zst\x00\x00\x00\x00\x00pdf\x00\x00\x00\x00\x00pyc\x00\x00\x00\x00\x00ttc\x00\x00\x00\x00\x00ttf\x00\x00\x00\x00\x00exe\x00\x00\x00\x00\x00apk\x00\x00\x00\x00\x00cnt\x00\x00\x00\x00\x00exo\x00\x00\x00\x00\x00odex\x00\x00\x00\x00vdex\x00\x00\x00\x00so\x00\x00\x00\x00\x00\x00db\x00'/352, 0x160, 0x860}, {&(0x7f0000010280)='\x00\x00\x00\x00Linux version 5.10.0-rc6-00193-gdafc6e24daf4 (e@sol) (gcc (GCC) 10.2.0, GNU ld (GNU Binutils) 2.35.1) #1 SMP PREEMPT Mon Nov 30 13:52:38 PST 2020\x00'/160, 0xa0, 0xb80}, {&(0x7f0000010320)="000000000100"/32, 0x20, 0xc80}, {&(0x7f0000010340)="00000000000100"/32, 0x20, 0xec0}, {&(0x7f0000010360)="1020f5f201000e0009000000030000000c000000090000000100000001000000000000000040000000000000180000001f0000000200000002000000020000000100000018000000000200000002000000060000000a0000000e000000100000030000000100000002000000a3bd865da4e84b259caac903308887eb00000000", 0x80, 0x1400}, {&(0x7f00000103e0)='\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00$\x00\x00\x00mp\x00\x00\x00\x00\x00\x00wm\x00\x00\x00\x00\x00\x00og\x00\x00\x00\x00\x00\x00jp\x00\x00\x00\x00\x00\x00avi\x00\x00\x00\x00\x00m4v\x00\x00\x00\x00\x00m4p\x00\x00\x00\x00\x00mkv\x00\x00\x00\x00\x00mov\x00\x00\x00\x00\x00webm\x00\x00\x00\x00wav\x00\x00\x00\x00\x00m4a\x00\x00\x00\x00\x003gp\x00\x00\x00\x00\x00opus\x00\x00\x00\x00flac\x00\x00\x00\x00gif\x00\x00\x00\x00\x00png\x00\x00\x00\x00\x00svg\x00\x00\x00\x00\x00webp\x00\x00\x00\x00jar\x00\x00\x00\x00\x00deb\x00\x00\x00\x00\x00iso\x00\x00\x00\x00\x00gz\x00\x00\x00\x00\x00\x00xz\x00\x00\x00\x00\x00\x00zst\x00\x00\x00\x00\x00pdf\x00\x00\x00\x00\x00pyc\x00\x00\x00\x00\x00ttc\x00\x00\x00\x00\x00ttf\x00\x00\x00\x00\x00exe\x00\x00\x00\x00\x00apk\x00\x00\x00\x00\x00cnt\x00\x00\x00\x00\x00exo\x00\x00\x00\x00\x00odex\x00\x00\x00\x00vdex\x00\x00\x00\x00so\x00\x00\x00\x00\x00\x00db\x00'/352, 0x160, 0x1860}, {&(0x7f0000010540)='\x00\x00\x00\x00Linux version 5.10.0-rc6-00193-gdafc6e24daf4 (e@sol) (gcc (GCC) 10.2.0, GNU ld (GNU Binutils) 2.35.1) #1 SMP PREEMPT Mon Nov 30 13:52:38 PST 2020\x00'/160, 0xa0, 0x1a80}, {&(0x7f00000105e0)='\x00\x00\x00\x00Linux version 5.10.0-rc6-00193-gdafc6e24daf4 (e@sol) (gcc (GCC) 10.2.0, GNU ld (GNU Binutils) 2.35.1) #1 SMP PREEMPT Mon Nov 30 13:52:38 PST 2020\x00'/160, 0xa0, 0x1b80}, {&(0x7f0000010680)="000000000100"/32, 0x20, 0x1c80}, {&(0x7f00000106a0)="00000000000100"/32, 0x20, 0x1ec0}, {&(0x7f00000106c0)="0bd03b7500000000001000000000000002000000000000000d0000001000000012000000000000000100000002000000ffffffffffffffffffffffffffffffffffffffff01000000000000000000000000000000030000000b00000005000000ffffffffffffffffffffffffffffffffffffffff010000000000000000000000000000008501000006000000010000000100000001000000040000004000000040000000fc0f00"/192, 0xc0, 0x200000}, {&(0x7f0000010780)="00000000000000000000000000000000000000000000000000000000d9fa28d50100030000000003000000001000"/64, 0x40, 0x200fe0}, {&(0x7f00000107c0)="000000000000000000000000000000000000000000000000000000060000000000010c8000"/64, 0x40, 0x2011e0}, {&(0x7f0000010800)="000000000000000000000001000000001000"/32, 0x20, 0x201240}, {&(0x7f0000010820)="0000000000000000000000af2c787bda05ef2500000000140000000000000000", 0x20, 0x201280}, {&(0x7f0000010840)="000000000000000300000001008000"/32, 0x20, 0x2012e0}, {&(0x7f0000010860)="0000000000000000000000000000000000000000000b00000000040000000000", 0x20, 0x201320}, {&(0x7f0000010880)="00000005000000000800"/32, 0x20, 0x201380}, {&(0x7f00000108a0)="0000000000000000000000000000000000000000000003000000000000000000", 0x20, 0x2013e0}, {&(0x7f00000108c0)="0300"/32, 0x20, 0x202002}, {&(0x7f00000108e0)="000000000000002300000000001be5865f0fffffc21c8bf30000200000000000", 0x20, 0x202fe0}, {&(0x7f0000010900)="0000000000000000000000000000000000000000000000000000000100000000", 0x20, 0x203fe0}, {&(0x7f0000010920)="00000000000000000000000000000000000000000000000000000001000000000bd03b7500000000001000000000000002000000000000000d0000001000000012000000000000000100000002000000ffffffffffffffffffffffffffffffffffffffff01000000000000000000000000000000030000000b00000005000000ffffffffffffffffffffffffffffffffffffffff010000000000000000000000000000008501000006000000010000000100000001000000040000004000000040000000fc0f00"/224, 0xe0, 0x204fe0}, {&(0x7f0000010a00)="00000000000000000000000000000000000000000000000000000000d9fa28d5", 0x20, 0x205fe0}, {&(0x7f0000010a20)="0bd03b75d9fa28d500"/32, 0x20, 0x3ff000}, {&(0x7f0000010a40)="0000000000000000feffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00"/96, 0x60, 0x3ff040}, {&(0x7f0000010aa0)="0000000000000000001000000000000002000000000000000d0000001000000012000000000000000100000002000000ffffffffffffffffffffffffffffffffffffffff01000000000000000000000000000000030000000b00000005000000ffffffffffffffffffffffffffffffffffffffff010000000000000000000000000000008501000006000000010000000100000001000000040000004000000040000000fc0f00"/192, 0xc0, 0x400000}, {&(0x7f0000010b60)="00000000000000000000000000000000000000000000000000000000d9a1f350", 0x20, 0x400fe0}, {&(0x7f0000010b80)="0000000000000000001000000000000002000000000000000d0000001000000012000000000000000100000002000000ffffffffffffffffffffffffffffffffffffffff01000000000000000000000000000000030000000b00000005000000ffffffffffffffffffffffffffffffffffffffff010000000000000000000000000000008501000006000000010000000100000001000000040000004000000040000000fc0f00"/192, 0xc0, 0x405000}, {&(0x7f0000010c40)="00000000000000000000000000000000000000000000000000000000d9a1f350", 0x20, 0x405fe0}, {&(0x7f0000010c60)="0000000000000000000001000000010000000002000000010000000003000000001000"/64, 0x40, 0xa00000}, {&(0x7f0000010ca0)="ed410000e8030000e8030000020000000010000000000000020000000000000055ffc65f0000000055ffc65f0000000055ffc65f00000000000000000000000000000000000000000100"/96, 0x60, 0x1000000}, {&(0x7f0000010d00)="0000000000000000001600"/32, 0x20, 0x1000160}, {&(0x7f0000010d20)="00000000000000000300000003000000dd0000000001100000", 0x19, 0x1000fe0}, {&(0x7f0000010d40)="0300000000000000000000000000000000000000000000000000000000000000000003000000010002000000000300000002000200"/64, 0x40, 0x1600000}, {&(0x7f0000010d80)='\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00.\x00\x00\x00\x00\x00\x00\x00..\x00\x00\x00\x00\x00\x00', 0x20, 0x1600940}, {&(0x7f00000101e0)='\x00\x00\x00\x00Linux version 5.10.0-rc6-00193-gdafc6e24daf4 (e@sol) (gcc (GCC) 10.2.0, GNU ld (GNU Binutils) 2.35.1) #1 SMP PREEMPT Mon Nov 30 13:52:38 PST 2020\x00'/160, 0xa0, 0x4000a80}], 0x0, &(0x7f0000000040)=ANY=[@ANYBLOB="5b70ebd4d8b781923800"], 0x0) (async) syz_open_dev$dmmidi(&(0x7f0000001240), 0x9, 0x4000) (async) accept4$x25(0xffffffffffffffff, &(0x7f0000001280)={0x9, @remote}, &(0x7f00000012c0)=0x12, 0x800) (async) getpid() (async) sched_setscheduler(r3, 0x1, &(0x7f0000001700)=0x4) (async) getsockopt$sock_cred(0xffffffffffffffff, 0x1, 0x11, &(0x7f0000001300), &(0x7f0000001340)=0xc) (async) openat$ipvs(0xffffffffffffff9c, &(0x7f0000001380)='/proc/sys/net/ipv4/vs/ignore_tunneled\x00', 0x2, 0x0) (async) syz_init_net_socket$nfc_llcp(0x27, 0x2, 0x1) (async) openat$pidfd(0xffffffffffffff9c, &(0x7f00000013c0), 0x2001, 0x0) (async) ioctl$TIOCGSID(0xffffffffffffffff, 0x5429, &(0x7f0000001400)) (async) getresuid(&(0x7f0000001440), &(0x7f0000001480), &(0x7f00000014c0)) (async) getresgid(&(0x7f0000000800), &(0x7f00000016c0), &(0x7f00000007c0)) (async) syz_mount_image$tmpfs(&(0x7f0000000000), &(0x7f0000000080)='./file0\x00', 0x0, 0x0, &(0x7f0000000000), 0x0, &(0x7f0000001980)=ANY=[@ANYBLOB='huge=never,gid=', @ANYRESHEX=r10, @ANYBLOB=',nr_inodes=k,huge=advise,mode=+0000000000000000006103,mode=00000000000000000157407,mpol=default,mode=00000000000000000000002,gid=', @ANYRESHEX=0xee01], 0x0) (async) pipe2$9p(&(0x7f00000001c0), 0x0) (async) socket$inet_udplite(0x2, 0x2, 0x88) (async) getsockopt$sock_cred(r13, 0x1, 0x11, &(0x7f0000000240), &(0x7f0000000100)=0xc) (async) mount$9p_fd(0x20000000, &(0x7f00000000c0)='./file0\x00', &(0x7f0000000280), 0x0, &(0x7f0000000140)={'trans=fd,', {'rfdno', 0x3d, r11}, 0x2c, {'wfdno', 0x3d, r12}, 0x2c, {[{@dfltuid={'dfltuid', 0x3d, r14}, 0x0}]}}) (async) sendmmsg$unix(0xffffffffffffffff, &(0x7f0000001600)=[{{&(0x7f0000000100)=@abs={0x0, 0x0, 0x4e23}, 0x6e, &(0x7f0000000080)=[{&(0x7f00000005c0)="97a2672bf523ef921263da8b5aea2d6c052bc2bde02e0656cfef5cc46b949a2a05565251077213730c93318ffe54bd1de5aef53704ff8dda55afa6a5644964c0a1e0ff1344bda093768da1bb828425fda9b92f36405fbe5b307c654930408fd2029cbee776c5eadce1b84d4fdbe7ad0c28c288725e1579cbb4723a13fc99704865c91ff183aad79efb7b74734801411ec1e4af5e4f027844952e1bae02ca642ea708af0393a5b3f3f3c1a0af2d89c0560529af65b0756576b8c5493afdb5258ca8d7f3da683e4fc2be6094899880817eafb0b9ce1caf4e43d6c8b0abcc8dd3c8205196bb58d596eca87620f36bf375415307f57bce0d8a1b7f3c", 0xfa}, {&(0x7f00000006c0)="1e263585c3e934808c9054998c98822ab6ebf56fabdbfcd509ebb8818d22a4639e507f6d109dce0ff07e1a52e5a099b32b3d9d509e663250a6b27926f8ae57c414de86efee6791bc7daf6284c9dec363fab87ac42368f18c06d8f440483e2210813789c8cb90eb65ff49efffa38e2372ad445a80001167692adb845edb06bcbcd157e9a5b1f41228c5e73c09362172ca812aa14455355cef17c1bb08ebd8a0d4c0cd86887f805cda45af3b7a45bead6a06", 0xb1}, {&(0x7f0000000180)="84e33b5810d155af768b86860df46a2b0ab68eb55dab48bb7ef5d625961102d10c4991d2cffa2429829b0dc4c58fc87bbe6067acb168ecef714e6cefd1314f0fc441db20b9ae3fe51fd1e94e86692696e709c4965d55dcf29211afa8043dc6a254d3ec0973f568686e1a26837ea24e44d4a6e6366496f9db665ac50d989edc", 0x7f}], 0x3, &(0x7f0000000780)=[@cred={{0x1c, 0x1, 0x2, {0x0, 0x0, 0xee01}}}], 0x20, 0x8001}}, {{0x0, 0x0, &(0x7f00000007c0), 0x0, &(0x7f0000000880)=[@rights={{0x14, 0x1, 0x1, [r0]}}, @rights={{0x24, 0x1, 0x1, [0xffffffffffffffff, r0, r0, 0xffffffffffffffff, r0]}}, @cred={{0x1c, 0x1, 0x2, {0x0, 0xee00}}}, @cred={{0x1c}}, @cred={{0x1c, 0x1, 0x2, {0x0, 0xee00, 0xffffffffffffffff}}}, @rights={{0x14, 0x1, 0x1, [0xffffffffffffffff]}}, @cred={{0x1c, 0x1, 0x2, {0x0, 0xee01}}}], 0xd8, 0x20004014}}, {{0x0, 0x0, &(0x7f0000000a40)=[{&(0x7f0000000980)="3cb12147a7ec68093924bf845f903b2d279927c337708e343b8f590b28aa979ffa92cdb0a31d6352b5710aebf2127af942da14fedf77afe1e173c8b84e0bc5e5f688f9bb226b8f4a4c15edf1bf920efdc66f5bbc3baac133949592b0cdff8c4546c41fe748438a2da5fc5c516220bff26e074f7141fa9451542c1978705ac2fca42deef74c55a98f3c50", 0x8a}], 0x1, &(0x7f0000000a80)=[@rights={{0x2c, 0x1, 0x1, [r0, r0, r0, 0xffffffffffffffff, 0xffffffffffffffff, 0xffffffffffffffff, 0xffffffffffffffff]}}], 0x30, 0x40011}}, {{0x0, 0x0, &(0x7f0000000f00)=[{&(0x7f0000000ac0)="f2909d425ba000e59030f028", 0xc}, {&(0x7f0000000b00)="69614bf52c2160560be87a6091fd6e9aea2cd6f6e09229302361aba1c5a855a587c7b310bbc86641b656735b1eba46fe0eb6dd90463d05a84ad8666f43da5064fe3f9041beef58707292bdca403e213059b3dd95e37b54fe6ccef0ba9f03eee4f095647250d7ce373e8da5164a79c8241d73bfdbe90e12b1d9d45c48dff83c6f78930c1bf0e62d98224e2f1c546c2fe1b1d489a5d2232a4de52ee45c2037626608a59c540014656039235cafc3e700a4dddd433f4bbf2764db7ffc11b023b64b19", 0xc1}, {&(0x7f0000000c00)="86c5d6100ff8bde1e09b9e458b12bf961497274b5c9de30bedab4ba055e301477b243bb613a8ecd0f3e79e9a0fe84d6bb70c6933b7a60bed517dc0beee22485071454bf925523e631aa5e87e97a38d806afe3dff8267f761fa31c8350ca0c65083f9eddc7473599a5b3d6a9f0e19573b7a3a3e4ec1ae2ed9c73b0476db0ed6a3fff58d5f12e4cb8cd2837bf273eb572acd2d17778cde98ab19b4e3bbc1bd4c6ffe360504486a17e8064dc7c958483c43536e78c69d9e755f7629f4ce62c1a57b26d927e83f29faa47400a28ef01d", 0xce}, {&(0x7f0000000d00)="75c340e5fc1faeb2f929267721dcdd0f88ee2d0fcb565a63cb7824eea93def4a9248901dca7a585ca7ad413694c38894c6aba04094ea6feab34065566efebb308b7e912761fcec05a284f25d56d963aac49de145ce033518c34819ad0f0c", 0x5e}, {&(0x7f0000000d80)="97427af9bb46f0ed05bac7e4ce0ef57ccf7bea0ef95cb577f2c4989ce7195b4c7728dc7fff3fd380f9", 0x29}, {&(0x7f0000000dc0)="071589ae818f35e9c3492458cf6e827dd6ac54033de4f30b1d7c6e896875bac293e6b368e2ec48f879b3184c5911696cab18ffa0f573f042d5f3e2d945e454bee1834c2e842260073f29a9884ecee797b32d0228662965f30bdc905bf24e900b58f80cb9b02f1c10fa9419bc2803854051ecb82c8272c0a6993d7fc565a1cd805f7f95b7e635d2a3c75fedd42a82d954b7c05963865bfcff85f55d51af69b9531c8ec719c9871ec2e0c4d224cbcbb5f670ad97a67885749dddca682623b8f96289efa15d24a1df567d5158348335c7e7fbab86d41182102a2b246c7a2950be4a640d527a89d166d7a87e2df091e2980b2419cd1ce0abfbe71faa7f", 0xfb}, {&(0x7f0000000ec0)="49e56b6ddf325d86209960e0", 0xc}], 0x7, &(0x7f0000000fc0)=[@cred={{0x1c, 0x1, 0x2, {0xffffffffffffffff, 0x0, 0xee00}}}], 0x20, 0x80}}, {{0x0, 0x0, &(0x7f00000011c0)=[{&(0x7f0000001000)="0c23785d072d4af31c9b9a9354e5cb30d90a4834b1bc1d5d4a991bc52fa6ef99cb58dd88e13f4b818a2d068a57683a5b71bd5b6eaee83727ef05db9cbf8d6619fbfb0168e847d3334b0772de4ae9c2cf1e3303115be351e1468c94578b336bc1fab7d8", 0x63}, {&(0x7f0000001080)="2dadac2e73146a4ee114d090eb3f26c3b6f65f68cfc513e78c43251a07b2f6976ffc3fdf6626932256eec6f32d8d5a719786be8fb8af6f4151ca0ab413d6ba08e864659e099efe04304b815bfa57a4c50a337502214d66848eefe59f18f9fc39aea09b0ba79be02f0525db32c8775b94b8e079bd2040e557095ec0d1197a48a19cf95ec384e71d8566825e6524dc19f73be04a9340ac304e0d743d89a7345ec2da7b68d234494826cbff68", 0xab}, {&(0x7f0000001140)="2c1623c6c29886a88db09a43239ea3e51bca186ad572759bc56e7a7093f82cd88ff7c9fa031a63ef4da18d922adf3fd8455a3c3b64d3f9e6ba3bfcf08270b5c3fbcefb3b1537506a57fe020f28309c6fbd73e3f2d7b97cd72c7f164406", 0x5d}], 0x3, &(0x7f0000001500)=[@rights={{0x38, 0x1, 0x1, [0xffffffffffffffff, r0, r0, 0xffffffffffffffff, 0xffffffffffffffff, r0, r0, r1, r0, r2]}}, @cred={{0x1c, 0x1, 0x2, {r3, 0xffffffffffffffff, r4}}}, @rights={{0x2c, 0x1, 0x1, [0xffffffffffffffff, r0, r5, r0, r0, r6, r7]}}, @cred={{0x1c, 0x1, 0x2, {r8, r9, r10}}}, @cred={{0x1c, 0x1, 0x2, {0xffffffffffffffff, r14, 0xee01}}}], 0xc8, 0x880}}], 0x5, 0x20000814) (async) 00:03:01 executing program 0: socketpair$unix(0x1, 0x0, 0x0, 0x0) recvmmsg(0xffffffffffffffff, 0x0, 0x0, 0x0, 0x0) r0 = syz_mount_image$f2fs(&(0x7f0000000000), &(0x7f00000000c0)='./file0\x00', 0x4000b20, 0x26, &(0x7f0000000200)=[{&(0x7f0000010000)="1020f5f201000e0009000000030000000c000000090000000100000001000000000000000040000000000000180000001f0000000200000002000000020000000100000018000000000200000002000000060000000a0000000e000000100000030000000100000002000000a3bd865da4e84b259caac903308887eb00000000", 0x80, 0x400}, {&(0x7f0000010080)='\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00$\x00\x00\x00mp\x00\x00\x00\x00\x00\x00wm\x00\x00\x00\x00\x00\x00og\x00\x00\x00\x00\x00\x00jp\x00\x00\x00\x00\x00\x00avi\x00\x00\x00\x00\x00m4v\x00\x00\x00\x00\x00m4p\x00\x00\x00\x00\x00mkv\x00\x00\x00\x00\x00mov\x00\x00\x00\x00\x00webm\x00\x00\x00\x00wav\x00\x00\x00\x00\x00m4a\x00\x00\x00\x00\x003gp\x00\x00\x00\x00\x00opus\x00\x00\x00\x00flac\x00\x00\x00\x00gif\x00\x00\x00\x00\x00png\x00\x00\x00\x00\x00svg\x00\x00\x00\x00\x00webp\x00\x00\x00\x00jar\x00\x00\x00\x00\x00deb\x00\x00\x00\x00\x00iso\x00\x00\x00\x00\x00gz\x00\x00\x00\x00\x00\x00xz\x00\x00\x00\x00\x00\x00zst\x00\x00\x00\x00\x00pdf\x00\x00\x00\x00\x00pyc\x00\x00\x00\x00\x00ttc\x00\x00\x00\x00\x00ttf\x00\x00\x00\x00\x00exe\x00\x00\x00\x00\x00apk\x00\x00\x00\x00\x00cnt\x00\x00\x00\x00\x00exo\x00\x00\x00\x00\x00odex\x00\x00\x00\x00vdex\x00\x00\x00\x00so\x00\x00\x00\x00\x00\x00db\x00'/352, 0x160, 0x860}, {&(0x7f0000010280)='\x00\x00\x00\x00Linux version 5.10.0-rc6-00193-gdafc6e24daf4 (e@sol) (gcc (GCC) 10.2.0, GNU ld (GNU Binutils) 2.35.1) #1 SMP PREEMPT Mon Nov 30 13:52:38 PST 2020\x00'/160, 0xa0, 0xb80}, {&(0x7f0000010320)="000000000100"/32, 0x20, 0xc80}, {&(0x7f0000010340)="00000000000100"/32, 0x20, 0xec0}, {&(0x7f0000010360)="1020f5f201000e0009000000030000000c000000090000000100000001000000000000000040000000000000180000001f0000000200000002000000020000000100000018000000000200000002000000060000000a0000000e000000100000030000000100000002000000a3bd865da4e84b259caac903308887eb00000000", 0x80, 0x1400}, {&(0x7f00000103e0)='\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00$\x00\x00\x00mp\x00\x00\x00\x00\x00\x00wm\x00\x00\x00\x00\x00\x00og\x00\x00\x00\x00\x00\x00jp\x00\x00\x00\x00\x00\x00avi\x00\x00\x00\x00\x00m4v\x00\x00\x00\x00\x00m4p\x00\x00\x00\x00\x00mkv\x00\x00\x00\x00\x00mov\x00\x00\x00\x00\x00webm\x00\x00\x00\x00wav\x00\x00\x00\x00\x00m4a\x00\x00\x00\x00\x003gp\x00\x00\x00\x00\x00opus\x00\x00\x00\x00flac\x00\x00\x00\x00gif\x00\x00\x00\x00\x00png\x00\x00\x00\x00\x00svg\x00\x00\x00\x00\x00webp\x00\x00\x00\x00jar\x00\x00\x00\x00\x00deb\x00\x00\x00\x00\x00iso\x00\x00\x00\x00\x00gz\x00\x00\x00\x00\x00\x00xz\x00\x00\x00\x00\x00\x00zst\x00\x00\x00\x00\x00pdf\x00\x00\x00\x00\x00pyc\x00\x00\x00\x00\x00ttc\x00\x00\x00\x00\x00ttf\x00\x00\x00\x00\x00exe\x00\x00\x00\x00\x00apk\x00\x00\x00\x00\x00cnt\x00\x00\x00\x00\x00exo\x00\x00\x00\x00\x00odex\x00\x00\x00\x00vdex\x00\x00\x00\x00so\x00\x00\x00\x00\x00\x00db\x00'/352, 0x160, 0x1860}, {&(0x7f0000010540)='\x00\x00\x00\x00Linux version 5.10.0-rc6-00193-gdafc6e24daf4 (e@sol) (gcc (GCC) 10.2.0, GNU ld (GNU Binutils) 2.35.1) #1 SMP PREEMPT Mon Nov 30 13:52:38 PST 2020\x00'/160, 0xa0, 0x1a80}, {&(0x7f00000105e0)='\x00\x00\x00\x00Linux version 5.10.0-rc6-00193-gdafc6e24daf4 (e@sol) (gcc (GCC) 10.2.0, GNU ld (GNU Binutils) 2.35.1) #1 SMP PREEMPT Mon Nov 30 13:52:38 PST 2020\x00'/160, 0xa0, 0x1b80}, {&(0x7f0000010680)="000000000100"/32, 0x20, 0x1c80}, {&(0x7f00000106a0)="00000000000100"/32, 0x20, 0x1ec0}, {&(0x7f00000106c0)="0bd03b7500000000001000000000000002000000000000000d0000001000000012000000000000000100000002000000ffffffffffffffffffffffffffffffffffffffff01000000000000000000000000000000030000000b00000005000000ffffffffffffffffffffffffffffffffffffffff010000000000000000000000000000008501000006000000010000000100000001000000040000004000000040000000fc0f00"/192, 0xc0, 0x200000}, {&(0x7f0000010780)="00000000000000000000000000000000000000000000000000000000d9fa28d50100030000000003000000001000"/64, 0x40, 0x200fe0}, {&(0x7f00000107c0)="000000000000000000000000000000000000000000000000000000060000000000010c8000"/64, 0x40, 0x2011e0}, {&(0x7f0000010800)="000000000000000000000001000000001000"/32, 0x20, 0x201240}, {&(0x7f0000010820)="0000000000000000000000af2c787bda05ef2500000000140000000000000000", 0x20, 0x201280}, {&(0x7f0000010840)="000000000000000300000001008000"/32, 0x20, 0x2012e0}, {&(0x7f0000010860)="0000000000000000000000000000000000000000000b00000000040000000000", 0x20, 0x201320}, {&(0x7f0000010880)="00000005000000000800"/32, 0x20, 0x201380}, {&(0x7f00000108a0)="0000000000000000000000000000000000000000000003000000000000000000", 0x20, 0x2013e0}, {&(0x7f00000108c0)="0300"/32, 0x20, 0x202002}, {&(0x7f00000108e0)="000000000000002300000000001be5865f0fffffc21c8bf30000200000000000", 0x20, 0x202fe0}, {&(0x7f0000010900)="0000000000000000000000000000000000000000000000000000000100000000", 0x20, 0x203fe0}, {&(0x7f0000010920)="00000000000000000000000000000000000000000000000000000001000000000bd03b7500000000001000000000000002000000000000000d0000001000000012000000000000000100000002000000ffffffffffffffffffffffffffffffffffffffff01000000000000000000000000000000030000000b00000005000000ffffffffffffffffffffffffffffffffffffffff010000000000000000000000000000008501000006000000010000000100000001000000040000004000000040000000fc0f00"/224, 0xe0, 0x204fe0}, {&(0x7f0000010a00)="00000000000000000000000000000000000000000000000000000000d9fa28d5", 0x20, 0x205fe0}, {&(0x7f0000010a20)="0bd03b75d9fa28d500"/32, 0x20, 0x3ff000}, {&(0x7f0000010a40)="0000000000000000feffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00"/96, 0x60, 0x3ff040}, {&(0x7f0000010aa0)="0000000000000000001000000000000002000000000000000d0000001000000012000000000000000100000002000000ffffffffffffffffffffffffffffffffffffffff01000000000000000000000000000000030000000b00000005000000ffffffffffffffffffffffffffffffffffffffff010000000000000000000000000000008501000006000000010000000100000001000000040000004000000040000000fc0f00"/192, 0xc0, 0x400000}, {&(0x7f0000010b60)="00000000000000000000000000000000000000000000000000000000d9a1f350", 0x20, 0x400fe0}, {&(0x7f0000010b80)="0000000000000000001000000000000002000000000000000d0000001000000012000000000000000100000002000000ffffffffffffffffffffffffffffffffffffffff01000000000000000000000000000000030000000b00000005000000ffffffffffffffffffffffffffffffffffffffff010000000000000000000000000000008501000006000000010000000100000001000000040000004000000040000000fc0f00"/192, 0xc0, 0x405000}, {&(0x7f0000010c40)="00000000000000000000000000000000000000000000000000000000d9a1f350", 0x20, 0x405fe0}, {&(0x7f0000010c60)="0000000000000000000001000000010000000002000000010000000003000000001000"/64, 0x40, 0xa00000}, {&(0x7f0000010ca0)="ed410000e8030000e8030000020000000010000000000000020000000000000055ffc65f0000000055ffc65f0000000055ffc65f00000000000000000000000000000000000000000100"/96, 0x60, 0x1000000}, {&(0x7f0000010d00)="0000000000000000001600"/32, 0x20, 0x1000160}, {&(0x7f0000010d20)="00000000000000000300000003000000dd0000000001100000", 0x19, 0x1000fe0}, {&(0x7f0000010d40)="0300000000000000000000000000000000000000000000000000000000000000000003000000010002000000000300000002000200"/64, 0x40, 0x1600000}, {&(0x7f0000010d80)='\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00.\x00\x00\x00\x00\x00\x00\x00..\x00\x00\x00\x00\x00\x00', 0x20, 0x1600940}, {&(0x7f00000101e0)='\x00\x00\x00\x00Linux version 5.10.0-rc6-00193-gdafc6e24daf4 (e@sol) (gcc (GCC) 10.2.0, GNU ld (GNU Binutils) 2.35.1) #1 SMP PREEMPT Mon Nov 30 13:52:38 PST 2020\x00'/160, 0xa0, 0x4000a80}], 0x0, &(0x7f0000000040)=ANY=[@ANYBLOB="5b70ebd4d8b781923800"], 0x0) r1 = syz_open_dev$dmmidi(&(0x7f0000001240), 0x9, 0x4000) r2 = accept4$x25(0xffffffffffffffff, &(0x7f0000001280)={0x9, @remote}, &(0x7f00000012c0)=0x12, 0x800) r3 = getpid() sched_setscheduler(r3, 0x1, &(0x7f0000001700)=0x4) getsockopt$sock_cred(0xffffffffffffffff, 0x1, 0x11, &(0x7f0000001300)={0x0, 0x0, 0x0}, &(0x7f0000001340)=0xc) r5 = openat$ipvs(0xffffffffffffff9c, &(0x7f0000001380)='/proc/sys/net/ipv4/vs/ignore_tunneled\x00', 0x2, 0x0) r6 = syz_init_net_socket$nfc_llcp(0x27, 0x2, 0x1) r7 = openat$pidfd(0xffffffffffffff9c, &(0x7f00000013c0), 0x2001, 0x0) ioctl$TIOCGSID(0xffffffffffffffff, 0x5429, &(0x7f0000001400)=0x0) getresuid(&(0x7f0000001440)=0x0, &(0x7f0000001480), &(0x7f00000014c0)) getresgid(&(0x7f0000000800), &(0x7f00000016c0), &(0x7f00000007c0)=0x0) syz_mount_image$tmpfs(&(0x7f0000000000), &(0x7f0000000080)='./file0\x00', 0x0, 0x0, &(0x7f0000000000), 0x0, &(0x7f0000001980)=ANY=[@ANYBLOB='huge=never,gid=', @ANYRESHEX=r10, @ANYBLOB=',nr_inodes=k,huge=advise,mode=+0000000000000000006103,mode=00000000000000000157407,mpol=default,mode=00000000000000000000002,gid=', @ANYRESHEX=0xee01], 0x0) pipe2$9p(&(0x7f00000001c0)={0xffffffffffffffff, 0xffffffffffffffff}, 0x0) r13 = socket$inet_udplite(0x2, 0x2, 0x88) getsockopt$sock_cred(r13, 0x1, 0x11, &(0x7f0000000240)={0x0, 0x0}, &(0x7f0000000100)=0xc) mount$9p_fd(0x20000000, &(0x7f00000000c0)='./file0\x00', &(0x7f0000000280), 0x0, &(0x7f0000000140)={'trans=fd,', {'rfdno', 0x3d, r11}, 0x2c, {'wfdno', 0x3d, r12}, 0x2c, {[{@dfltuid={'dfltuid', 0x3d, r14}, 0x0}]}}) sendmmsg$unix(0xffffffffffffffff, &(0x7f0000001600)=[{{&(0x7f0000000100)=@abs={0x0, 0x0, 0x4e23}, 0x6e, &(0x7f0000000080)=[{&(0x7f00000005c0)="97a2672bf523ef921263da8b5aea2d6c052bc2bde02e0656cfef5cc46b949a2a05565251077213730c93318ffe54bd1de5aef53704ff8dda55afa6a5644964c0a1e0ff1344bda093768da1bb828425fda9b92f36405fbe5b307c654930408fd2029cbee776c5eadce1b84d4fdbe7ad0c28c288725e1579cbb4723a13fc99704865c91ff183aad79efb7b74734801411ec1e4af5e4f027844952e1bae02ca642ea708af0393a5b3f3f3c1a0af2d89c0560529af65b0756576b8c5493afdb5258ca8d7f3da683e4fc2be6094899880817eafb0b9ce1caf4e43d6c8b0abcc8dd3c8205196bb58d596eca87620f36bf375415307f57bce0d8a1b7f3c", 0xfa}, {&(0x7f00000006c0)="1e263585c3e934808c9054998c98822ab6ebf56fabdbfcd509ebb8818d22a4639e507f6d109dce0ff07e1a52e5a099b32b3d9d509e663250a6b27926f8ae57c414de86efee6791bc7daf6284c9dec363fab87ac42368f18c06d8f440483e2210813789c8cb90eb65ff49efffa38e2372ad445a80001167692adb845edb06bcbcd157e9a5b1f41228c5e73c09362172ca812aa14455355cef17c1bb08ebd8a0d4c0cd86887f805cda45af3b7a45bead6a06", 0xb1}, {&(0x7f0000000180)="84e33b5810d155af768b86860df46a2b0ab68eb55dab48bb7ef5d625961102d10c4991d2cffa2429829b0dc4c58fc87bbe6067acb168ecef714e6cefd1314f0fc441db20b9ae3fe51fd1e94e86692696e709c4965d55dcf29211afa8043dc6a254d3ec0973f568686e1a26837ea24e44d4a6e6366496f9db665ac50d989edc", 0x7f}], 0x3, &(0x7f0000000780)=[@cred={{0x1c, 0x1, 0x2, {0x0, 0x0, 0xee01}}}], 0x20, 0x8001}}, {{0x0, 0x0, &(0x7f00000007c0), 0x0, &(0x7f0000000880)=[@rights={{0x14, 0x1, 0x1, [r0]}}, @rights={{0x24, 0x1, 0x1, [0xffffffffffffffff, r0, r0, 0xffffffffffffffff, r0]}}, @cred={{0x1c, 0x1, 0x2, {0x0, 0xee00}}}, @cred={{0x1c}}, @cred={{0x1c, 0x1, 0x2, {0x0, 0xee00, 0xffffffffffffffff}}}, @rights={{0x14, 0x1, 0x1, [0xffffffffffffffff]}}, @cred={{0x1c, 0x1, 0x2, {0x0, 0xee01}}}], 0xd8, 0x20004014}}, {{0x0, 0x0, &(0x7f0000000a40)=[{&(0x7f0000000980)="3cb12147a7ec68093924bf845f903b2d279927c337708e343b8f590b28aa979ffa92cdb0a31d6352b5710aebf2127af942da14fedf77afe1e173c8b84e0bc5e5f688f9bb226b8f4a4c15edf1bf920efdc66f5bbc3baac133949592b0cdff8c4546c41fe748438a2da5fc5c516220bff26e074f7141fa9451542c1978705ac2fca42deef74c55a98f3c50", 0x8a}], 0x1, &(0x7f0000000a80)=[@rights={{0x2c, 0x1, 0x1, [r0, r0, r0, 0xffffffffffffffff, 0xffffffffffffffff, 0xffffffffffffffff, 0xffffffffffffffff]}}], 0x30, 0x40011}}, {{0x0, 0x0, &(0x7f0000000f00)=[{&(0x7f0000000ac0)="f2909d425ba000e59030f028", 0xc}, {&(0x7f0000000b00)="69614bf52c2160560be87a6091fd6e9aea2cd6f6e09229302361aba1c5a855a587c7b310bbc86641b656735b1eba46fe0eb6dd90463d05a84ad8666f43da5064fe3f9041beef58707292bdca403e213059b3dd95e37b54fe6ccef0ba9f03eee4f095647250d7ce373e8da5164a79c8241d73bfdbe90e12b1d9d45c48dff83c6f78930c1bf0e62d98224e2f1c546c2fe1b1d489a5d2232a4de52ee45c2037626608a59c540014656039235cafc3e700a4dddd433f4bbf2764db7ffc11b023b64b19", 0xc1}, {&(0x7f0000000c00)="86c5d6100ff8bde1e09b9e458b12bf961497274b5c9de30bedab4ba055e301477b243bb613a8ecd0f3e79e9a0fe84d6bb70c6933b7a60bed517dc0beee22485071454bf925523e631aa5e87e97a38d806afe3dff8267f761fa31c8350ca0c65083f9eddc7473599a5b3d6a9f0e19573b7a3a3e4ec1ae2ed9c73b0476db0ed6a3fff58d5f12e4cb8cd2837bf273eb572acd2d17778cde98ab19b4e3bbc1bd4c6ffe360504486a17e8064dc7c958483c43536e78c69d9e755f7629f4ce62c1a57b26d927e83f29faa47400a28ef01d", 0xce}, {&(0x7f0000000d00)="75c340e5fc1faeb2f929267721dcdd0f88ee2d0fcb565a63cb7824eea93def4a9248901dca7a585ca7ad413694c38894c6aba04094ea6feab34065566efebb308b7e912761fcec05a284f25d56d963aac49de145ce033518c34819ad0f0c", 0x5e}, {&(0x7f0000000d80)="97427af9bb46f0ed05bac7e4ce0ef57ccf7bea0ef95cb577f2c4989ce7195b4c7728dc7fff3fd380f9", 0x29}, {&(0x7f0000000dc0)="071589ae818f35e9c3492458cf6e827dd6ac54033de4f30b1d7c6e896875bac293e6b368e2ec48f879b3184c5911696cab18ffa0f573f042d5f3e2d945e454bee1834c2e842260073f29a9884ecee797b32d0228662965f30bdc905bf24e900b58f80cb9b02f1c10fa9419bc2803854051ecb82c8272c0a6993d7fc565a1cd805f7f95b7e635d2a3c75fedd42a82d954b7c05963865bfcff85f55d51af69b9531c8ec719c9871ec2e0c4d224cbcbb5f670ad97a67885749dddca682623b8f96289efa15d24a1df567d5158348335c7e7fbab86d41182102a2b246c7a2950be4a640d527a89d166d7a87e2df091e2980b2419cd1ce0abfbe71faa7f", 0xfb}, {&(0x7f0000000ec0)="49e56b6ddf325d86209960e0", 0xc}], 0x7, &(0x7f0000000fc0)=[@cred={{0x1c, 0x1, 0x2, {0xffffffffffffffff, 0x0, 0xee00}}}], 0x20, 0x80}}, {{0x0, 0x0, &(0x7f00000011c0)=[{&(0x7f0000001000)="0c23785d072d4af31c9b9a9354e5cb30d90a4834b1bc1d5d4a991bc52fa6ef99cb58dd88e13f4b818a2d068a57683a5b71bd5b6eaee83727ef05db9cbf8d6619fbfb0168e847d3334b0772de4ae9c2cf1e3303115be351e1468c94578b336bc1fab7d8", 0x63}, {&(0x7f0000001080)="2dadac2e73146a4ee114d090eb3f26c3b6f65f68cfc513e78c43251a07b2f6976ffc3fdf6626932256eec6f32d8d5a719786be8fb8af6f4151ca0ab413d6ba08e864659e099efe04304b815bfa57a4c50a337502214d66848eefe59f18f9fc39aea09b0ba79be02f0525db32c8775b94b8e079bd2040e557095ec0d1197a48a19cf95ec384e71d8566825e6524dc19f73be04a9340ac304e0d743d89a7345ec2da7b68d234494826cbff68", 0xab}, {&(0x7f0000001140)="2c1623c6c29886a88db09a43239ea3e51bca186ad572759bc56e7a7093f82cd88ff7c9fa031a63ef4da18d922adf3fd8455a3c3b64d3f9e6ba3bfcf08270b5c3fbcefb3b1537506a57fe020f28309c6fbd73e3f2d7b97cd72c7f164406", 0x5d}], 0x3, &(0x7f0000001500)=[@rights={{0x38, 0x1, 0x1, [0xffffffffffffffff, r0, r0, 0xffffffffffffffff, 0xffffffffffffffff, r0, r0, r1, r0, r2]}}, @cred={{0x1c, 0x1, 0x2, {r3, 0xffffffffffffffff, r4}}}, @rights={{0x2c, 0x1, 0x1, [0xffffffffffffffff, r0, r5, r0, r0, r6, r7]}}, @cred={{0x1c, 0x1, 0x2, {r8, r9, r10}}}, @cred={{0x1c, 0x1, 0x2, {0xffffffffffffffff, r14, 0xee01}}}], 0xc8, 0x880}}], 0x5, 0x20000814) socketpair$unix(0x1, 0x0, 0x0, 0x0) (async) recvmmsg(0xffffffffffffffff, 0x0, 0x0, 0x0, 0x0) (async) syz_mount_image$f2fs(&(0x7f0000000000), &(0x7f00000000c0)='./file0\x00', 0x4000b20, 0x26, &(0x7f0000000200)=[{&(0x7f0000010000)="1020f5f201000e0009000000030000000c000000090000000100000001000000000000000040000000000000180000001f0000000200000002000000020000000100000018000000000200000002000000060000000a0000000e000000100000030000000100000002000000a3bd865da4e84b259caac903308887eb00000000", 0x80, 0x400}, {&(0x7f0000010080)='\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00$\x00\x00\x00mp\x00\x00\x00\x00\x00\x00wm\x00\x00\x00\x00\x00\x00og\x00\x00\x00\x00\x00\x00jp\x00\x00\x00\x00\x00\x00avi\x00\x00\x00\x00\x00m4v\x00\x00\x00\x00\x00m4p\x00\x00\x00\x00\x00mkv\x00\x00\x00\x00\x00mov\x00\x00\x00\x00\x00webm\x00\x00\x00\x00wav\x00\x00\x00\x00\x00m4a\x00\x00\x00\x00\x003gp\x00\x00\x00\x00\x00opus\x00\x00\x00\x00flac\x00\x00\x00\x00gif\x00\x00\x00\x00\x00png\x00\x00\x00\x00\x00svg\x00\x00\x00\x00\x00webp\x00\x00\x00\x00jar\x00\x00\x00\x00\x00deb\x00\x00\x00\x00\x00iso\x00\x00\x00\x00\x00gz\x00\x00\x00\x00\x00\x00xz\x00\x00\x00\x00\x00\x00zst\x00\x00\x00\x00\x00pdf\x00\x00\x00\x00\x00pyc\x00\x00\x00\x00\x00ttc\x00\x00\x00\x00\x00ttf\x00\x00\x00\x00\x00exe\x00\x00\x00\x00\x00apk\x00\x00\x00\x00\x00cnt\x00\x00\x00\x00\x00exo\x00\x00\x00\x00\x00odex\x00\x00\x00\x00vdex\x00\x00\x00\x00so\x00\x00\x00\x00\x00\x00db\x00'/352, 0x160, 0x860}, {&(0x7f0000010280)='\x00\x00\x00\x00Linux version 5.10.0-rc6-00193-gdafc6e24daf4 (e@sol) (gcc (GCC) 10.2.0, GNU ld (GNU Binutils) 2.35.1) #1 SMP PREEMPT Mon Nov 30 13:52:38 PST 2020\x00'/160, 0xa0, 0xb80}, {&(0x7f0000010320)="000000000100"/32, 0x20, 0xc80}, {&(0x7f0000010340)="00000000000100"/32, 0x20, 0xec0}, {&(0x7f0000010360)="1020f5f201000e0009000000030000000c000000090000000100000001000000000000000040000000000000180000001f0000000200000002000000020000000100000018000000000200000002000000060000000a0000000e000000100000030000000100000002000000a3bd865da4e84b259caac903308887eb00000000", 0x80, 0x1400}, {&(0x7f00000103e0)='\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00$\x00\x00\x00mp\x00\x00\x00\x00\x00\x00wm\x00\x00\x00\x00\x00\x00og\x00\x00\x00\x00\x00\x00jp\x00\x00\x00\x00\x00\x00avi\x00\x00\x00\x00\x00m4v\x00\x00\x00\x00\x00m4p\x00\x00\x00\x00\x00mkv\x00\x00\x00\x00\x00mov\x00\x00\x00\x00\x00webm\x00\x00\x00\x00wav\x00\x00\x00\x00\x00m4a\x00\x00\x00\x00\x003gp\x00\x00\x00\x00\x00opus\x00\x00\x00\x00flac\x00\x00\x00\x00gif\x00\x00\x00\x00\x00png\x00\x00\x00\x00\x00svg\x00\x00\x00\x00\x00webp\x00\x00\x00\x00jar\x00\x00\x00\x00\x00deb\x00\x00\x00\x00\x00iso\x00\x00\x00\x00\x00gz\x00\x00\x00\x00\x00\x00xz\x00\x00\x00\x00\x00\x00zst\x00\x00\x00\x00\x00pdf\x00\x00\x00\x00\x00pyc\x00\x00\x00\x00\x00ttc\x00\x00\x00\x00\x00ttf\x00\x00\x00\x00\x00exe\x00\x00\x00\x00\x00apk\x00\x00\x00\x00\x00cnt\x00\x00\x00\x00\x00exo\x00\x00\x00\x00\x00odex\x00\x00\x00\x00vdex\x00\x00\x00\x00so\x00\x00\x00\x00\x00\x00db\x00'/352, 0x160, 0x1860}, {&(0x7f0000010540)='\x00\x00\x00\x00Linux version 5.10.0-rc6-00193-gdafc6e24daf4 (e@sol) (gcc (GCC) 10.2.0, GNU ld (GNU Binutils) 2.35.1) #1 SMP PREEMPT Mon Nov 30 13:52:38 PST 2020\x00'/160, 0xa0, 0x1a80}, {&(0x7f00000105e0)='\x00\x00\x00\x00Linux version 5.10.0-rc6-00193-gdafc6e24daf4 (e@sol) (gcc (GCC) 10.2.0, GNU ld (GNU Binutils) 2.35.1) #1 SMP PREEMPT Mon Nov 30 13:52:38 PST 2020\x00'/160, 0xa0, 0x1b80}, {&(0x7f0000010680)="000000000100"/32, 0x20, 0x1c80}, {&(0x7f00000106a0)="00000000000100"/32, 0x20, 0x1ec0}, {&(0x7f00000106c0)="0bd03b7500000000001000000000000002000000000000000d0000001000000012000000000000000100000002000000ffffffffffffffffffffffffffffffffffffffff01000000000000000000000000000000030000000b00000005000000ffffffffffffffffffffffffffffffffffffffff010000000000000000000000000000008501000006000000010000000100000001000000040000004000000040000000fc0f00"/192, 0xc0, 0x200000}, {&(0x7f0000010780)="00000000000000000000000000000000000000000000000000000000d9fa28d50100030000000003000000001000"/64, 0x40, 0x200fe0}, {&(0x7f00000107c0)="000000000000000000000000000000000000000000000000000000060000000000010c8000"/64, 0x40, 0x2011e0}, {&(0x7f0000010800)="000000000000000000000001000000001000"/32, 0x20, 0x201240}, {&(0x7f0000010820)="0000000000000000000000af2c787bda05ef2500000000140000000000000000", 0x20, 0x201280}, {&(0x7f0000010840)="000000000000000300000001008000"/32, 0x20, 0x2012e0}, {&(0x7f0000010860)="0000000000000000000000000000000000000000000b00000000040000000000", 0x20, 0x201320}, {&(0x7f0000010880)="00000005000000000800"/32, 0x20, 0x201380}, {&(0x7f00000108a0)="0000000000000000000000000000000000000000000003000000000000000000", 0x20, 0x2013e0}, {&(0x7f00000108c0)="0300"/32, 0x20, 0x202002}, {&(0x7f00000108e0)="000000000000002300000000001be5865f0fffffc21c8bf30000200000000000", 0x20, 0x202fe0}, {&(0x7f0000010900)="0000000000000000000000000000000000000000000000000000000100000000", 0x20, 0x203fe0}, {&(0x7f0000010920)="00000000000000000000000000000000000000000000000000000001000000000bd03b7500000000001000000000000002000000000000000d0000001000000012000000000000000100000002000000ffffffffffffffffffffffffffffffffffffffff01000000000000000000000000000000030000000b00000005000000ffffffffffffffffffffffffffffffffffffffff010000000000000000000000000000008501000006000000010000000100000001000000040000004000000040000000fc0f00"/224, 0xe0, 0x204fe0}, {&(0x7f0000010a00)="00000000000000000000000000000000000000000000000000000000d9fa28d5", 0x20, 0x205fe0}, {&(0x7f0000010a20)="0bd03b75d9fa28d500"/32, 0x20, 0x3ff000}, {&(0x7f0000010a40)="0000000000000000feffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00"/96, 0x60, 0x3ff040}, {&(0x7f0000010aa0)="0000000000000000001000000000000002000000000000000d0000001000000012000000000000000100000002000000ffffffffffffffffffffffffffffffffffffffff01000000000000000000000000000000030000000b00000005000000ffffffffffffffffffffffffffffffffffffffff010000000000000000000000000000008501000006000000010000000100000001000000040000004000000040000000fc0f00"/192, 0xc0, 0x400000}, {&(0x7f0000010b60)="00000000000000000000000000000000000000000000000000000000d9a1f350", 0x20, 0x400fe0}, {&(0x7f0000010b80)="0000000000000000001000000000000002000000000000000d0000001000000012000000000000000100000002000000ffffffffffffffffffffffffffffffffffffffff01000000000000000000000000000000030000000b00000005000000ffffffffffffffffffffffffffffffffffffffff010000000000000000000000000000008501000006000000010000000100000001000000040000004000000040000000fc0f00"/192, 0xc0, 0x405000}, {&(0x7f0000010c40)="00000000000000000000000000000000000000000000000000000000d9a1f350", 0x20, 0x405fe0}, {&(0x7f0000010c60)="0000000000000000000001000000010000000002000000010000000003000000001000"/64, 0x40, 0xa00000}, {&(0x7f0000010ca0)="ed410000e8030000e8030000020000000010000000000000020000000000000055ffc65f0000000055ffc65f0000000055ffc65f00000000000000000000000000000000000000000100"/96, 0x60, 0x1000000}, {&(0x7f0000010d00)="0000000000000000001600"/32, 0x20, 0x1000160}, {&(0x7f0000010d20)="00000000000000000300000003000000dd0000000001100000", 0x19, 0x1000fe0}, {&(0x7f0000010d40)="0300000000000000000000000000000000000000000000000000000000000000000003000000010002000000000300000002000200"/64, 0x40, 0x1600000}, {&(0x7f0000010d80)='\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00.\x00\x00\x00\x00\x00\x00\x00..\x00\x00\x00\x00\x00\x00', 0x20, 0x1600940}, {&(0x7f00000101e0)='\x00\x00\x00\x00Linux version 5.10.0-rc6-00193-gdafc6e24daf4 (e@sol) (gcc (GCC) 10.2.0, GNU ld (GNU Binutils) 2.35.1) #1 SMP PREEMPT Mon Nov 30 13:52:38 PST 2020\x00'/160, 0xa0, 0x4000a80}], 0x0, &(0x7f0000000040)=ANY=[@ANYBLOB="5b70ebd4d8b781923800"], 0x0) (async) syz_open_dev$dmmidi(&(0x7f0000001240), 0x9, 0x4000) (async) accept4$x25(0xffffffffffffffff, &(0x7f0000001280)={0x9, @remote}, &(0x7f00000012c0)=0x12, 0x800) (async) getpid() (async) sched_setscheduler(r3, 0x1, &(0x7f0000001700)=0x4) (async) getsockopt$sock_cred(0xffffffffffffffff, 0x1, 0x11, &(0x7f0000001300), &(0x7f0000001340)=0xc) (async) openat$ipvs(0xffffffffffffff9c, &(0x7f0000001380)='/proc/sys/net/ipv4/vs/ignore_tunneled\x00', 0x2, 0x0) (async) syz_init_net_socket$nfc_llcp(0x27, 0x2, 0x1) (async) openat$pidfd(0xffffffffffffff9c, &(0x7f00000013c0), 0x2001, 0x0) (async) ioctl$TIOCGSID(0xffffffffffffffff, 0x5429, &(0x7f0000001400)) (async) getresuid(&(0x7f0000001440), &(0x7f0000001480), &(0x7f00000014c0)) (async) getresgid(&(0x7f0000000800), &(0x7f00000016c0), &(0x7f00000007c0)) (async) syz_mount_image$tmpfs(&(0x7f0000000000), &(0x7f0000000080)='./file0\x00', 0x0, 0x0, &(0x7f0000000000), 0x0, &(0x7f0000001980)=ANY=[@ANYBLOB='huge=never,gid=', @ANYRESHEX=r10, @ANYBLOB=',nr_inodes=k,huge=advise,mode=+0000000000000000006103,mode=00000000000000000157407,mpol=default,mode=00000000000000000000002,gid=', @ANYRESHEX=0xee01], 0x0) (async) pipe2$9p(&(0x7f00000001c0), 0x0) (async) socket$inet_udplite(0x2, 0x2, 0x88) (async) getsockopt$sock_cred(r13, 0x1, 0x11, &(0x7f0000000240), &(0x7f0000000100)=0xc) (async) mount$9p_fd(0x20000000, &(0x7f00000000c0)='./file0\x00', &(0x7f0000000280), 0x0, &(0x7f0000000140)={'trans=fd,', {'rfdno', 0x3d, r11}, 0x2c, {'wfdno', 0x3d, r12}, 0x2c, {[{@dfltuid={'dfltuid', 0x3d, r14}, 0x0}]}}) (async) sendmmsg$unix(0xffffffffffffffff, &(0x7f0000001600)=[{{&(0x7f0000000100)=@abs={0x0, 0x0, 0x4e23}, 0x6e, &(0x7f0000000080)=[{&(0x7f00000005c0)="97a2672bf523ef921263da8b5aea2d6c052bc2bde02e0656cfef5cc46b949a2a05565251077213730c93318ffe54bd1de5aef53704ff8dda55afa6a5644964c0a1e0ff1344bda093768da1bb828425fda9b92f36405fbe5b307c654930408fd2029cbee776c5eadce1b84d4fdbe7ad0c28c288725e1579cbb4723a13fc99704865c91ff183aad79efb7b74734801411ec1e4af5e4f027844952e1bae02ca642ea708af0393a5b3f3f3c1a0af2d89c0560529af65b0756576b8c5493afdb5258ca8d7f3da683e4fc2be6094899880817eafb0b9ce1caf4e43d6c8b0abcc8dd3c8205196bb58d596eca87620f36bf375415307f57bce0d8a1b7f3c", 0xfa}, {&(0x7f00000006c0)="1e263585c3e934808c9054998c98822ab6ebf56fabdbfcd509ebb8818d22a4639e507f6d109dce0ff07e1a52e5a099b32b3d9d509e663250a6b27926f8ae57c414de86efee6791bc7daf6284c9dec363fab87ac42368f18c06d8f440483e2210813789c8cb90eb65ff49efffa38e2372ad445a80001167692adb845edb06bcbcd157e9a5b1f41228c5e73c09362172ca812aa14455355cef17c1bb08ebd8a0d4c0cd86887f805cda45af3b7a45bead6a06", 0xb1}, {&(0x7f0000000180)="84e33b5810d155af768b86860df46a2b0ab68eb55dab48bb7ef5d625961102d10c4991d2cffa2429829b0dc4c58fc87bbe6067acb168ecef714e6cefd1314f0fc441db20b9ae3fe51fd1e94e86692696e709c4965d55dcf29211afa8043dc6a254d3ec0973f568686e1a26837ea24e44d4a6e6366496f9db665ac50d989edc", 0x7f}], 0x3, &(0x7f0000000780)=[@cred={{0x1c, 0x1, 0x2, {0x0, 0x0, 0xee01}}}], 0x20, 0x8001}}, {{0x0, 0x0, &(0x7f00000007c0), 0x0, &(0x7f0000000880)=[@rights={{0x14, 0x1, 0x1, [r0]}}, @rights={{0x24, 0x1, 0x1, [0xffffffffffffffff, r0, r0, 0xffffffffffffffff, r0]}}, @cred={{0x1c, 0x1, 0x2, {0x0, 0xee00}}}, @cred={{0x1c}}, @cred={{0x1c, 0x1, 0x2, {0x0, 0xee00, 0xffffffffffffffff}}}, @rights={{0x14, 0x1, 0x1, [0xffffffffffffffff]}}, @cred={{0x1c, 0x1, 0x2, {0x0, 0xee01}}}], 0xd8, 0x20004014}}, {{0x0, 0x0, &(0x7f0000000a40)=[{&(0x7f0000000980)="3cb12147a7ec68093924bf845f903b2d279927c337708e343b8f590b28aa979ffa92cdb0a31d6352b5710aebf2127af942da14fedf77afe1e173c8b84e0bc5e5f688f9bb226b8f4a4c15edf1bf920efdc66f5bbc3baac133949592b0cdff8c4546c41fe748438a2da5fc5c516220bff26e074f7141fa9451542c1978705ac2fca42deef74c55a98f3c50", 0x8a}], 0x1, &(0x7f0000000a80)=[@rights={{0x2c, 0x1, 0x1, [r0, r0, r0, 0xffffffffffffffff, 0xffffffffffffffff, 0xffffffffffffffff, 0xffffffffffffffff]}}], 0x30, 0x40011}}, {{0x0, 0x0, &(0x7f0000000f00)=[{&(0x7f0000000ac0)="f2909d425ba000e59030f028", 0xc}, {&(0x7f0000000b00)="69614bf52c2160560be87a6091fd6e9aea2cd6f6e09229302361aba1c5a855a587c7b310bbc86641b656735b1eba46fe0eb6dd90463d05a84ad8666f43da5064fe3f9041beef58707292bdca403e213059b3dd95e37b54fe6ccef0ba9f03eee4f095647250d7ce373e8da5164a79c8241d73bfdbe90e12b1d9d45c48dff83c6f78930c1bf0e62d98224e2f1c546c2fe1b1d489a5d2232a4de52ee45c2037626608a59c540014656039235cafc3e700a4dddd433f4bbf2764db7ffc11b023b64b19", 0xc1}, {&(0x7f0000000c00)="86c5d6100ff8bde1e09b9e458b12bf961497274b5c9de30bedab4ba055e301477b243bb613a8ecd0f3e79e9a0fe84d6bb70c6933b7a60bed517dc0beee22485071454bf925523e631aa5e87e97a38d806afe3dff8267f761fa31c8350ca0c65083f9eddc7473599a5b3d6a9f0e19573b7a3a3e4ec1ae2ed9c73b0476db0ed6a3fff58d5f12e4cb8cd2837bf273eb572acd2d17778cde98ab19b4e3bbc1bd4c6ffe360504486a17e8064dc7c958483c43536e78c69d9e755f7629f4ce62c1a57b26d927e83f29faa47400a28ef01d", 0xce}, {&(0x7f0000000d00)="75c340e5fc1faeb2f929267721dcdd0f88ee2d0fcb565a63cb7824eea93def4a9248901dca7a585ca7ad413694c38894c6aba04094ea6feab34065566efebb308b7e912761fcec05a284f25d56d963aac49de145ce033518c34819ad0f0c", 0x5e}, {&(0x7f0000000d80)="97427af9bb46f0ed05bac7e4ce0ef57ccf7bea0ef95cb577f2c4989ce7195b4c7728dc7fff3fd380f9", 0x29}, {&(0x7f0000000dc0)="071589ae818f35e9c3492458cf6e827dd6ac54033de4f30b1d7c6e896875bac293e6b368e2ec48f879b3184c5911696cab18ffa0f573f042d5f3e2d945e454bee1834c2e842260073f29a9884ecee797b32d0228662965f30bdc905bf24e900b58f80cb9b02f1c10fa9419bc2803854051ecb82c8272c0a6993d7fc565a1cd805f7f95b7e635d2a3c75fedd42a82d954b7c05963865bfcff85f55d51af69b9531c8ec719c9871ec2e0c4d224cbcbb5f670ad97a67885749dddca682623b8f96289efa15d24a1df567d5158348335c7e7fbab86d41182102a2b246c7a2950be4a640d527a89d166d7a87e2df091e2980b2419cd1ce0abfbe71faa7f", 0xfb}, {&(0x7f0000000ec0)="49e56b6ddf325d86209960e0", 0xc}], 0x7, &(0x7f0000000fc0)=[@cred={{0x1c, 0x1, 0x2, {0xffffffffffffffff, 0x0, 0xee00}}}], 0x20, 0x80}}, {{0x0, 0x0, &(0x7f00000011c0)=[{&(0x7f0000001000)="0c23785d072d4af31c9b9a9354e5cb30d90a4834b1bc1d5d4a991bc52fa6ef99cb58dd88e13f4b818a2d068a57683a5b71bd5b6eaee83727ef05db9cbf8d6619fbfb0168e847d3334b0772de4ae9c2cf1e3303115be351e1468c94578b336bc1fab7d8", 0x63}, {&(0x7f0000001080)="2dadac2e73146a4ee114d090eb3f26c3b6f65f68cfc513e78c43251a07b2f6976ffc3fdf6626932256eec6f32d8d5a719786be8fb8af6f4151ca0ab413d6ba08e864659e099efe04304b815bfa57a4c50a337502214d66848eefe59f18f9fc39aea09b0ba79be02f0525db32c8775b94b8e079bd2040e557095ec0d1197a48a19cf95ec384e71d8566825e6524dc19f73be04a9340ac304e0d743d89a7345ec2da7b68d234494826cbff68", 0xab}, {&(0x7f0000001140)="2c1623c6c29886a88db09a43239ea3e51bca186ad572759bc56e7a7093f82cd88ff7c9fa031a63ef4da18d922adf3fd8455a3c3b64d3f9e6ba3bfcf08270b5c3fbcefb3b1537506a57fe020f28309c6fbd73e3f2d7b97cd72c7f164406", 0x5d}], 0x3, &(0x7f0000001500)=[@rights={{0x38, 0x1, 0x1, [0xffffffffffffffff, r0, r0, 0xffffffffffffffff, 0xffffffffffffffff, r0, r0, r1, r0, r2]}}, @cred={{0x1c, 0x1, 0x2, {r3, 0xffffffffffffffff, r4}}}, @rights={{0x2c, 0x1, 0x1, [0xffffffffffffffff, r0, r5, r0, r0, r6, r7]}}, @cred={{0x1c, 0x1, 0x2, {r8, r9, r10}}}, @cred={{0x1c, 0x1, 0x2, {0xffffffffffffffff, r14, 0xee01}}}], 0xc8, 0x880}}], 0x5, 0x20000814) (async) 00:03:01 executing program 1: r0 = syz_open_procfs(0x0, &(0x7f0000000040)='attr/exec\x00') write$sysctl(r0, 0x0, 0x0) r1 = syz_open_procfs(0x0, &(0x7f0000000040)='attr/exec\x00') write$sysctl(r1, 0x0, 0x0) kcmp$KCMP_EPOLL_TFD(0xffffffffffffffff, 0x0, 0x7, 0xffffffffffffffff, &(0x7f0000000080)={r0, r1, 0x4}) syz_mount_image$udf(&(0x7f0000000000), &(0x7f0000000100)='./file0\x00', 0x100000, 0x25, &(0x7f0000000200)=[{&(0x7f00000001c0)="f6f59bd275", 0x5, 0x1}, {&(0x7f0000000dc0)="0501", 0x2, 0x6}, {&(0x7f0000011900)="0700020035000100927f3000e30700000400000005000000002600004d000000001600007500000000e0000090000000001e00000101000000140000f5070000", 0x40, 0x8}, {&(0x7f00000119e0)="002a4c696e757820554446465300000000000000000000000405000000000000", 0x20, 0xff}, {&(0x7f0000000040)="020002002200010076b5f00100010000002000006000000000200000e0070000851febfebe06d2956dac161f473b", 0x2e, 0xa8c}, {&(0x7f0000010000)="0042454130310100"/32, 0x20, 0x8000}, {&(0x7f0000000ac0)="004e535230320100000000000000000000000000000000000000000000000000e68527d15138f260a3fd8f97b67ecd04dd1a83b427f95fe92bf9a2b3ec4cb8e8f3b7f4ac1174bc2658169baf625a246a0f22dafce1b6179e25252a5239bf7bf5a5e2bd290f71bc93cbb456a31d8f792794becccbda497e0c65b2", 0x7a, 0x8800}, {&(0x7f0000010060)="010002001d0001001aaef001600000000100000000000000084c696e757855444600000000000000000000000000000000000000000000090100010002000300010000000100000008313233343536373831323334353637384c696e757855444600"/128, 0x80, 0xc000}, {&(0x7f00000100e0)="0000000000000019004f53544120436f6d7072657373656420556e69636f646500000000000000000000000000000000000000000000000000000000000000000000000000000000004f53544120436f6d7072657373656420556e69636f64650000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002a4c696e7578206d6b756466667320322e33000000000000000000000000000010e607090c0c00354c1256002a4c696e7578205544464653000000000000000000000004050000", 0xe0, 0xc0c0}, {&(0x7f00000101c0)="000000000000000001000000000000000000000000000000000000000000000006000200660001006ba8e8016100000002000000004f53544120436f6d7072657373656420556e69636f646500000000000000000000000000000000000000000000000000000000000000000000000000000000084c696e7578554446000000", 0x80, 0xc1e0}, {&(0x7f0000000b40)="000000000000000000000000000000000000000900020000002a4f5354412055444620436f6d706c69616e74000000005001000000000000000200001000000000000000000000004000000001000000002a4c696e75782055444646530000000000000000000000040500"/128, 0x80, 0xc2c0}, {&(0x7f00000102c0)="00000000000000000000000000000000002000008000000002400000002a554446205370617261626c6520506172746974696f6e500104050000000001000000200002003801000070000000f007000000000000000000000000000000000000050002007e000100879cf001620000000300000001000000002b4e53523032000000000000000000000000000000000000000000000000000000000000000000000200"/192, 0xc0, 0xc3a0}, {&(0x7f0000010380)="0000000000000000000000000000000000000000000000000400000010050000d0020000002a4c696e7578205544464653000000000000000000000004050000", 0x40, 0xc4a0}, {&(0x7f00000103c0)="07000200ae000100927f3000630000000400000005000000002600004d000000001600007500000000e0000090000000001e00000101000000140000f5070000", 0x40, 0xc600}, {&(0x7f0000010480)='\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\t\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\b\x00', 0x20, 0xc8e4}, {&(0x7f00000104c0)="0800020061e400000000f0016500"/32, 0x20, 0xca00}, {&(0x7f00000104e0)="000002009100010021d4280170000000002a5544462053706172696e67205461626c650000000000500104050000feff1f00000000000000ffffffff10010000ffffffff30010000ffffffff50010000ffffffff70010000ffffffff90010000ffffffffb0010000ffffffffd0010000fffffffff0010000ffffffff10020000ffffffff30020000ffffffff50020000ffffffff70020000ffffffff90020000ffffffffb0020000ffffffffd0020000fffffffff0020000ffffffff10130000ffffffff30030000ffffffff50030000ffffffff70030000ffffffff90030000ffffffffb0030000ffffffffd0030000fffffffff0030000ffffffff10040000ffffffff30040000ffffff2051040000ffffffff70040400ffffffff90040000ffffffffb1040000ffffffffd0040000fffffffff00400"/320, 0x140, 0xe000}, {&(0x7f0000010620)="09000200d70001000acb7600800000000010e607090c0c00355f4d010100000000000000000000001800000000000000000000000000000000000000000000000000000000000000010000002e000000b0020000d0020000002a4c696e757820554446465300000000000000000000000405000000000000060000000200000050015001010200"/160, 0xa0, 0x10000}, {&(0x7f00000106c0)="080002007d0001000000f0018100"/32, 0x20, 0x10201}, {&(0x7f0000000580)="0501020052000100beaba0004000000000000000040000000100000500000000000000040000000000000000a57c00000100000000000000000000000000000000000000000000000010e607090c0c00354c12560010e607090c0c00354c12560010e607090c0c00354c12560100000000000000000000000000000000000000002a4c696e7578205544464653000000000000000000000004050000000000001000"/192, 0xc0, 0xa1ffe}, {&(0x7f0000010780)="0001020037000100bb77f001100000000010e607090c0c00354c12560300030001000000010000000000000000000000004f53544120436f6d7072657373656420556e69636f646500000000000000000000000000000000000000000000000000000000000000000000000000000000084c696e757855444600000000000000", 0x80, 0xa4000}, {&(0x7f0000010800)="00000000000000000000000000000009004f53544120436f6d7072657373656420556e69636f646500000000000000000000000000000000000000000000000000000000000000000000000000000000084c696e7578554446000000000000000000000000000000000000000000000908436f707972696768740000000000000000000000000000000000000000000a084162737472616374000000000000000000000000000000000000000000000900020000200000000000000000000000002a4f5354412055444620436f6d706c69616e74000000005001000000000000", 0xe0, 0xa40e0}, {&(0x7f00000108e0)="050102007c000100e5c6a8002000000000000000040000000100000400000000000000000000000000000000a53c00000200000000000000440100000000000001000000000000000010e607090c0c00354c12560010e607090c0c00355e59530010e607090c0c00355e59530100000000000000000000000000000000000000002a4c696e75782055444646530000000000000000000000040500000000000000000000000000000000000008000000440100003000"/192, 0xc0, 0xa6000}, {&(0x7f00000109a0)="05010200e4000100009920012100000000000000040000000100000400000000000003000000000000000000a57c00000100000000000000800000000000000000000000000000000010e607090c0c00355e59530010e607090c0c00355e59530010e607090c0c00355e59530100000000000000000000000000000000000000002a4c696e7578205544464653000000000000000000000004050000000000001100000000000000000000008000000001010200b10001001b5818002100000001000a000002000020000000000000000000000000000000010102004b00010059b01c0021000000010000060002000022000000000000001200000000000866696c65300101020078000100c1751c0021000000010000060002000026000000000000001300000000000866696c653100"/320, 0x140, 0xa6200}, {&(0x7f0000000ec0)="050102003a00010060ffb0002200000000000000040000000100000500000000000001000000000000000000a57c000001000000000000001a0400000000000003000000000000000010e607090c0c00355e59530010e607090c0c00355e59530010e607090c0c00355e59530100000000000000000000000000000000000000002a4c696e757820554446465300000000000000000000000405000000000000120000000000000000000000100000001a0400002300000000000000000000002a45b58d713cad61e7dab36b5e8959ad96994d6085abb47ce917bc94880aa00742f3855b9ccb18059562a101f4e75933c6193af916d81015a92428ffd390aefc4db306b3e4962dde7f8fd647a9634ce65ff9c98875f692fa9b6252d64aade0a52ff67dbf3c4346262674d552c49d391385d185", 0x133, 0xa6400}, {&(0x7f0000010ba0)='syzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkal\x00\x00\x00\x00\x00\x00', 0x420, 0xa6600}, {&(0x7f0000011180)="05010200000001009d72c0002800000000000500000000000000000500000000000001000000000000000000a57c00000200000000000000282300000000000012000000000000000010e607090c0c00355e59530010e607090c0c00355e59530010e607090c0c00355e59530100000000000000000039e8a954000000000000002a4c696e75782055444646530000000000000000000000040500000000000015000000000000000000000020000000000e0000290000000000000000000000281500003100"/224, 0xe0, 0xa7000}, {&(0x7f0000000640)="01010200c00001001b5818003000000001000a00000200002000000000000000000000000000000001010200c40001007ae92c003000000001000116000200004000000000000000100000000000084e6f6e2d416c6c6f63617461626c6520537061636501010200e4000100f0a31c00300000000100020600020000210000000d0000001100000000000866696c653001010200d200010039481c0030000000010000060002000027000000000000001400000000000866696c6531010102002e0001008f4e1c0030000000010000060002000028000000000000001500000000000866696c653201010200dd000100315b1c0030000000010000060002000028000000000000001600000000000866696c653301010200e7000100f79b2000300000000100000a000200003c000000000000001700000000000866696c652e636f6c6400"/352, 0x160, 0xa8000}, {&(0x7f00000113c0)="05010200c90001004b3404013c00000000000000040000000100000500000000000003000000000000000000a57c000001000000640000000000000000000000000000000010e607090c0c00355e59530010e607090c0c00355e59530010e607090c0c00355e59530100000000000000000000000000000000000000002a4c696e7578205544464653000000000000000000000004050000000000001700000000000000000000006400000073797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6cff7273797a6b616c6c657273797a6b616c6c65727300"/284, 0x11c, 0xa9800}, {&(0x7f0000000cc0)="01000200a40001001aaef001e00700000100000000000000084c696e75785544460000000000000000000000000000000000010002000300010000000100000008313233343536373831323334353637384c696e75785544460000000000000000000000000000000000000000000000000000000000000099ba5e04e45b4d989aa1c1f08d8fb273e4d8f842e3deeed757eab71508d863d7f8c57f1b4b42e1fca7db856b4577f7519ad6996e31ff8acc65f87b0a667c5d221f9a6bd53078564c", 0xc0, 0xfc000}, {&(0x7f0000000bc0)="0000000000000019004f53544121436f6d7072657373656420556e69636f646500000000000000000000000000000200000000000000000000000000000000000000000000000000004f53544120436f6d7072657373656420556e69636f64650000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002a4c01000100206d6b756466667320322e33000000000000000000000000000010e607090c0c00354c1256002a4c6900000000000000040500"/224, 0xe0, 0xfc0c0}, {&(0x7f00000007c0)="190000000000000000000000000000000000000900020002002a4f5354412055444620436f6d706c69616e740000000050010000000000000002000010000000000001000000000000005025f74000000001000000002a4c696e7578205544464653000000000000000000000004050000000000000000000000000000000000c0a19d095286d8962c9d3c49a1e6ab5fc1a748d4e37345d5b16d7b7740cc1a10cc570749d073ac380d464879a0c80c6c9e6b55ae44c566b9a7ce5a7f4580dcf46b0e74a9d79c031d4eb80d929765ef282d4e67a8ffbc846db8591b4eb0", 0xdd, 0xfc2c0}, {&(0x7f0000000980)="00000000000000000000000000000000002000008000000002400000002a554446205370617261626c6520506172746974696f6e500104050000000001000000200002003801000070000000f0070000000000000000000000000000000000000500020005000100879cf001e20700000300000001000000002b4e53523032000000000000000000000000000000000000000000000000000000000000000000000200"/192, 0xc0, 0xfc3a0}, {&(0x7f00000118c0)="0000000000000000000000000000000000000000000000000400000010050000d0020000002a4c696e7578205544464653000000000000000000000004050000", 0x40, 0xfc4a3}, {&(0x7f00000119c0)='\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\t\x00'/32, 0x20, 0xfc8e0}, {&(0x7f0000001100)="000002001800010021d42801f0070000002a5544462053706172696e67205461626c65000000000050010405000000002000ffffffff10010000ffffffff30010000ffffffff50010000ffffffff70010000ffffffff90010000ffffffffb0010000ffffffffd0010000fffffffff0010000ffffffff10020000ffffffff30020000ffffffff50020000ffffffff70020000ffffffff90020000ffffffff80020000ffffffffd0020000fffffffff0020000ffffffff10030000ffffffff30030000ffffffff50030000ffffffff70030000ffffffff90030000ffffffffb0030000ffffffffd0030000fffffffff0030000ffffffff10040000ffffffff30040000ffffffff50040000ffffffff70040000ffffffff90040000ffffffffb0040000ffffffffd0040000fffffffff004000000000000000000000000000000008c58769b598272941536357f7851ad688bfec95b2f6d5a182b2d113cb5590d413bf2b9ca14ed8fd0e9125b4f6d385dfae4aa0678d4b43c08b96d53cf2120846ef58a6396af12e1243e1898651a13b600d049260b2adb3c3f4e5f64c4d1aed5e362426701", 0x1a4, 0xfe000}, {&(0x7f0000011b60)="020002002700010076b5f001ff070000002000006000000000200000e0070000", 0x20, 0xffe00}], 0x1000008, &(0x7f0000000e00)=ANY=[@ANYBLOB='umask=00000000000000000000314,anchor=00000000000000002047,uid=ignore,unhide,gid=forget,nostrict,fileset=00000000000000032767,iocharset=cp861,gid=', @ANYRESDEC=0x0, @ANYBLOB="00000000000000bb40118d07"], 0x1) openat$cgroup_ro(0xffffffffffffff9c, &(0x7f00000001c0)='memory.current\x00', 0x275a, 0x0) syz_open_procfs(0x0, &(0x7f0000000040)='attr/exec\x00') (async) write$sysctl(r0, 0x0, 0x0) (async) syz_open_procfs(0x0, &(0x7f0000000040)='attr/exec\x00') (async) write$sysctl(r1, 0x0, 0x0) (async) kcmp$KCMP_EPOLL_TFD(0xffffffffffffffff, 0x0, 0x7, 0xffffffffffffffff, &(0x7f0000000080)={r0, r1, 0x4}) (async) syz_mount_image$udf(&(0x7f0000000000), &(0x7f0000000100)='./file0\x00', 0x100000, 0x25, &(0x7f0000000200)=[{&(0x7f00000001c0)="f6f59bd275", 0x5, 0x1}, {&(0x7f0000000dc0)="0501", 0x2, 0x6}, {&(0x7f0000011900)="0700020035000100927f3000e30700000400000005000000002600004d000000001600007500000000e0000090000000001e00000101000000140000f5070000", 0x40, 0x8}, {&(0x7f00000119e0)="002a4c696e757820554446465300000000000000000000000405000000000000", 0x20, 0xff}, {&(0x7f0000000040)="020002002200010076b5f00100010000002000006000000000200000e0070000851febfebe06d2956dac161f473b", 0x2e, 0xa8c}, {&(0x7f0000010000)="0042454130310100"/32, 0x20, 0x8000}, {&(0x7f0000000ac0)="004e535230320100000000000000000000000000000000000000000000000000e68527d15138f260a3fd8f97b67ecd04dd1a83b427f95fe92bf9a2b3ec4cb8e8f3b7f4ac1174bc2658169baf625a246a0f22dafce1b6179e25252a5239bf7bf5a5e2bd290f71bc93cbb456a31d8f792794becccbda497e0c65b2", 0x7a, 0x8800}, {&(0x7f0000010060)="010002001d0001001aaef001600000000100000000000000084c696e757855444600000000000000000000000000000000000000000000090100010002000300010000000100000008313233343536373831323334353637384c696e757855444600"/128, 0x80, 0xc000}, {&(0x7f00000100e0)="0000000000000019004f53544120436f6d7072657373656420556e69636f646500000000000000000000000000000000000000000000000000000000000000000000000000000000004f53544120436f6d7072657373656420556e69636f64650000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002a4c696e7578206d6b756466667320322e33000000000000000000000000000010e607090c0c00354c1256002a4c696e7578205544464653000000000000000000000004050000", 0xe0, 0xc0c0}, {&(0x7f00000101c0)="000000000000000001000000000000000000000000000000000000000000000006000200660001006ba8e8016100000002000000004f53544120436f6d7072657373656420556e69636f646500000000000000000000000000000000000000000000000000000000000000000000000000000000084c696e7578554446000000", 0x80, 0xc1e0}, {&(0x7f0000000b40)="000000000000000000000000000000000000000900020000002a4f5354412055444620436f6d706c69616e74000000005001000000000000000200001000000000000000000000004000000001000000002a4c696e75782055444646530000000000000000000000040500"/128, 0x80, 0xc2c0}, {&(0x7f00000102c0)="00000000000000000000000000000000002000008000000002400000002a554446205370617261626c6520506172746974696f6e500104050000000001000000200002003801000070000000f007000000000000000000000000000000000000050002007e000100879cf001620000000300000001000000002b4e53523032000000000000000000000000000000000000000000000000000000000000000000000200"/192, 0xc0, 0xc3a0}, {&(0x7f0000010380)="0000000000000000000000000000000000000000000000000400000010050000d0020000002a4c696e7578205544464653000000000000000000000004050000", 0x40, 0xc4a0}, {&(0x7f00000103c0)="07000200ae000100927f3000630000000400000005000000002600004d000000001600007500000000e0000090000000001e00000101000000140000f5070000", 0x40, 0xc600}, {&(0x7f0000010480)='\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\t\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\b\x00', 0x20, 0xc8e4}, {&(0x7f00000104c0)="0800020061e400000000f0016500"/32, 0x20, 0xca00}, {&(0x7f00000104e0)="000002009100010021d4280170000000002a5544462053706172696e67205461626c650000000000500104050000feff1f00000000000000ffffffff10010000ffffffff30010000ffffffff50010000ffffffff70010000ffffffff90010000ffffffffb0010000ffffffffd0010000fffffffff0010000ffffffff10020000ffffffff30020000ffffffff50020000ffffffff70020000ffffffff90020000ffffffffb0020000ffffffffd0020000fffffffff0020000ffffffff10130000ffffffff30030000ffffffff50030000ffffffff70030000ffffffff90030000ffffffffb0030000ffffffffd0030000fffffffff0030000ffffffff10040000ffffffff30040000ffffff2051040000ffffffff70040400ffffffff90040000ffffffffb1040000ffffffffd0040000fffffffff00400"/320, 0x140, 0xe000}, {&(0x7f0000010620)="09000200d70001000acb7600800000000010e607090c0c00355f4d010100000000000000000000001800000000000000000000000000000000000000000000000000000000000000010000002e000000b0020000d0020000002a4c696e757820554446465300000000000000000000000405000000000000060000000200000050015001010200"/160, 0xa0, 0x10000}, {&(0x7f00000106c0)="080002007d0001000000f0018100"/32, 0x20, 0x10201}, {&(0x7f0000000580)="0501020052000100beaba0004000000000000000040000000100000500000000000000040000000000000000a57c00000100000000000000000000000000000000000000000000000010e607090c0c00354c12560010e607090c0c00354c12560010e607090c0c00354c12560100000000000000000000000000000000000000002a4c696e7578205544464653000000000000000000000004050000000000001000"/192, 0xc0, 0xa1ffe}, {&(0x7f0000010780)="0001020037000100bb77f001100000000010e607090c0c00354c12560300030001000000010000000000000000000000004f53544120436f6d7072657373656420556e69636f646500000000000000000000000000000000000000000000000000000000000000000000000000000000084c696e757855444600000000000000", 0x80, 0xa4000}, {&(0x7f0000010800)="00000000000000000000000000000009004f53544120436f6d7072657373656420556e69636f646500000000000000000000000000000000000000000000000000000000000000000000000000000000084c696e7578554446000000000000000000000000000000000000000000000908436f707972696768740000000000000000000000000000000000000000000a084162737472616374000000000000000000000000000000000000000000000900020000200000000000000000000000002a4f5354412055444620436f6d706c69616e74000000005001000000000000", 0xe0, 0xa40e0}, {&(0x7f00000108e0)="050102007c000100e5c6a8002000000000000000040000000100000400000000000000000000000000000000a53c00000200000000000000440100000000000001000000000000000010e607090c0c00354c12560010e607090c0c00355e59530010e607090c0c00355e59530100000000000000000000000000000000000000002a4c696e75782055444646530000000000000000000000040500000000000000000000000000000000000008000000440100003000"/192, 0xc0, 0xa6000}, {&(0x7f00000109a0)="05010200e4000100009920012100000000000000040000000100000400000000000003000000000000000000a57c00000100000000000000800000000000000000000000000000000010e607090c0c00355e59530010e607090c0c00355e59530010e607090c0c00355e59530100000000000000000000000000000000000000002a4c696e7578205544464653000000000000000000000004050000000000001100000000000000000000008000000001010200b10001001b5818002100000001000a000002000020000000000000000000000000000000010102004b00010059b01c0021000000010000060002000022000000000000001200000000000866696c65300101020078000100c1751c0021000000010000060002000026000000000000001300000000000866696c653100"/320, 0x140, 0xa6200}, {&(0x7f0000000ec0)="050102003a00010060ffb0002200000000000000040000000100000500000000000001000000000000000000a57c000001000000000000001a0400000000000003000000000000000010e607090c0c00355e59530010e607090c0c00355e59530010e607090c0c00355e59530100000000000000000000000000000000000000002a4c696e757820554446465300000000000000000000000405000000000000120000000000000000000000100000001a0400002300000000000000000000002a45b58d713cad61e7dab36b5e8959ad96994d6085abb47ce917bc94880aa00742f3855b9ccb18059562a101f4e75933c6193af916d81015a92428ffd390aefc4db306b3e4962dde7f8fd647a9634ce65ff9c98875f692fa9b6252d64aade0a52ff67dbf3c4346262674d552c49d391385d185", 0x133, 0xa6400}, {&(0x7f0000010ba0)='syzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkal\x00\x00\x00\x00\x00\x00', 0x420, 0xa6600}, {&(0x7f0000011180)="05010200000001009d72c0002800000000000500000000000000000500000000000001000000000000000000a57c00000200000000000000282300000000000012000000000000000010e607090c0c00355e59530010e607090c0c00355e59530010e607090c0c00355e59530100000000000000000039e8a954000000000000002a4c696e75782055444646530000000000000000000000040500000000000015000000000000000000000020000000000e0000290000000000000000000000281500003100"/224, 0xe0, 0xa7000}, {&(0x7f0000000640)="01010200c00001001b5818003000000001000a00000200002000000000000000000000000000000001010200c40001007ae92c003000000001000116000200004000000000000000100000000000084e6f6e2d416c6c6f63617461626c6520537061636501010200e4000100f0a31c00300000000100020600020000210000000d0000001100000000000866696c653001010200d200010039481c0030000000010000060002000027000000000000001400000000000866696c6531010102002e0001008f4e1c0030000000010000060002000028000000000000001500000000000866696c653201010200dd000100315b1c0030000000010000060002000028000000000000001600000000000866696c653301010200e7000100f79b2000300000000100000a000200003c000000000000001700000000000866696c652e636f6c6400"/352, 0x160, 0xa8000}, {&(0x7f00000113c0)="05010200c90001004b3404013c00000000000000040000000100000500000000000003000000000000000000a57c000001000000640000000000000000000000000000000010e607090c0c00355e59530010e607090c0c00355e59530010e607090c0c00355e59530100000000000000000000000000000000000000002a4c696e7578205544464653000000000000000000000004050000000000001700000000000000000000006400000073797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6cff7273797a6b616c6c657273797a6b616c6c65727300"/284, 0x11c, 0xa9800}, {&(0x7f0000000cc0)="01000200a40001001aaef001e00700000100000000000000084c696e75785544460000000000000000000000000000000000010002000300010000000100000008313233343536373831323334353637384c696e75785544460000000000000000000000000000000000000000000000000000000000000099ba5e04e45b4d989aa1c1f08d8fb273e4d8f842e3deeed757eab71508d863d7f8c57f1b4b42e1fca7db856b4577f7519ad6996e31ff8acc65f87b0a667c5d221f9a6bd53078564c", 0xc0, 0xfc000}, {&(0x7f0000000bc0)="0000000000000019004f53544121436f6d7072657373656420556e69636f646500000000000000000000000000000200000000000000000000000000000000000000000000000000004f53544120436f6d7072657373656420556e69636f64650000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002a4c01000100206d6b756466667320322e33000000000000000000000000000010e607090c0c00354c1256002a4c6900000000000000040500"/224, 0xe0, 0xfc0c0}, {&(0x7f00000007c0)="190000000000000000000000000000000000000900020002002a4f5354412055444620436f6d706c69616e740000000050010000000000000002000010000000000001000000000000005025f74000000001000000002a4c696e7578205544464653000000000000000000000004050000000000000000000000000000000000c0a19d095286d8962c9d3c49a1e6ab5fc1a748d4e37345d5b16d7b7740cc1a10cc570749d073ac380d464879a0c80c6c9e6b55ae44c566b9a7ce5a7f4580dcf46b0e74a9d79c031d4eb80d929765ef282d4e67a8ffbc846db8591b4eb0", 0xdd, 0xfc2c0}, {&(0x7f0000000980)="00000000000000000000000000000000002000008000000002400000002a554446205370617261626c6520506172746974696f6e500104050000000001000000200002003801000070000000f0070000000000000000000000000000000000000500020005000100879cf001e20700000300000001000000002b4e53523032000000000000000000000000000000000000000000000000000000000000000000000200"/192, 0xc0, 0xfc3a0}, {&(0x7f00000118c0)="0000000000000000000000000000000000000000000000000400000010050000d0020000002a4c696e7578205544464653000000000000000000000004050000", 0x40, 0xfc4a3}, {&(0x7f00000119c0)='\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\t\x00'/32, 0x20, 0xfc8e0}, {&(0x7f0000001100)="000002001800010021d42801f0070000002a5544462053706172696e67205461626c65000000000050010405000000002000ffffffff10010000ffffffff30010000ffffffff50010000ffffffff70010000ffffffff90010000ffffffffb0010000ffffffffd0010000fffffffff0010000ffffffff10020000ffffffff30020000ffffffff50020000ffffffff70020000ffffffff90020000ffffffff80020000ffffffffd0020000fffffffff0020000ffffffff10030000ffffffff30030000ffffffff50030000ffffffff70030000ffffffff90030000ffffffffb0030000ffffffffd0030000fffffffff0030000ffffffff10040000ffffffff30040000ffffffff50040000ffffffff70040000ffffffff90040000ffffffffb0040000ffffffffd0040000fffffffff004000000000000000000000000000000008c58769b598272941536357f7851ad688bfec95b2f6d5a182b2d113cb5590d413bf2b9ca14ed8fd0e9125b4f6d385dfae4aa0678d4b43c08b96d53cf2120846ef58a6396af12e1243e1898651a13b600d049260b2adb3c3f4e5f64c4d1aed5e362426701", 0x1a4, 0xfe000}, {&(0x7f0000011b60)="020002002700010076b5f001ff070000002000006000000000200000e0070000", 0x20, 0xffe00}], 0x1000008, &(0x7f0000000e00)=ANY=[@ANYBLOB='umask=00000000000000000000314,anchor=00000000000000002047,uid=ignore,unhide,gid=forget,nostrict,fileset=00000000000000032767,iocharset=cp861,gid=', @ANYRESDEC=0x0, @ANYBLOB="00000000000000bb40118d07"], 0x1) (async) openat$cgroup_ro(0xffffffffffffff9c, &(0x7f00000001c0)='memory.current\x00', 0x275a, 0x0) (async) 00:03:01 executing program 5: syz_mount_image$nilfs2(&(0x7f00000000c0), &(0x7f0000000100)='./file0\x00', 0x100000, 0x38, &(0x7f0000000200)=[{&(0x7f0000000880)='\x00', 0x1}, {&(0x7f00000008c0)="1100fbbadd", 0x5, 0x1}, {&(0x7f00000106a0)="010000", 0x3, 0x6}, {&(0x7f0000011720)='/tmp/syz-imagegen3787079791/file0/file0\x00'/64, 0x40, 0x9}, {&(0x7f00000009c0)="020000000000343418010000f498e16897043d98000000003f00000000000000000010000000000004000000000000001000000005000000010000000000000004000000000000000000000000000000e003000000000000781f1f6300000000781f1f6300000000781f1f63000000000100320000000100781f1f6300000000004eed0000000000000000000b00000080002000c00010005745cea941714c61b9841bd4a64c433600"/192, 0xc0, 0x400}, {&(0x7f0000010200)="0200000000000000100001022e0000000200000000000000100002022e2e00000b00000000000000e00306012e6e696c667300"/64, 0x40, 0x1400}, {&(0x7f00000012c0)="f41f000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200098ab8dc400002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000713568942e28999cae2000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000ccff0d2100002000000020000000200000ff0f000000000000000000000000000000000000000000000000000000000000b857bfc0ef7c59073fbea67e3a8b1a4b0e430b1b02d43cddefd3a5e5186c9daad83a4700674b15bc4fd900681f19f6b32e1cb067bd5cd019ee952c231902517f50489e52e1710e00d1bd2aa0631b9d9c073fc0d80be08660ac88627af182fc37da295d455c3ac006650b055f52da71a4782997e92da0a93e82924b281030b3af07eefafb2feb22996b53e044c3f4adc1674d8bbaed211fb0afffaa6383651cfc67979d380bd965c1e119469af2ec455803fef7bc5484341c9b986c58e13c1d5fac5756a49ca168a0035e25f7034751deef40832ef538c98b956c130f1eb4b057556a9e6278094ee44c48ab5193a90ec86cb901cce267e5f3d44c37fef409ab70cc6729e102bebd84fc3cc7963d46a087e06213f426b93b9f210eee3d23d30a75fd58cdcd8ad74867589c32e75119efbde9d54a661c4be42c", 0x561, 0x17ff}, {&(0x7f0000010660)="00000000000000000000000000000000781f1f6300000000781f1f63000000000000000000000000000000000000000000800100"/64, 0x40, 0x2080}, {&(0x7f0000010700)="00000000000000000000000000000000781f1f6300000000781f1f63000000000000000000000000000000000000000000800100"/64, 0x40, 0x2380}, {&(0x7f0000000980)="00000000000000000000000000000000781f1f6300000000781f1f63000000000000000000000000000000000000000000800100"/64, 0x40, 0x2400}, {&(0x7f0000010780)="00000000000000000000000000000000781f1f6300000000781f1f63000000000000000000000000000000000000000000800100"/64, 0x40, 0x2480}, {&(0x7f0000001c40)="00000000000000000000000000000000781f1f6300000000781f1f6300000000000000000000000000000000000000000080010000000000000000000000005b0d71bedc67bfe2aa78246cc880fa60173b9b92105c36da53fafb922ad6e2ed0b79d6f232aed1ab2373296e31685439b91de925fb8c9a8aeefb9e454543004509", 0x80, 0x2500}, {&(0x7f0000010800)="00000000000000000000000000000000781f1f6300000000781f1f630000000000000000000000000000000000000000a4810100"/64, 0x40, 0x2580}, {&(0x7f0000010840)="0100"/32, 0x20, 0x2800}, {&(0x7f0000010860)="0000000000000000000000000000000000000000000000000100000000000000781f1f63000000000c000000000000000200000000000000050000000000000004000000000000000000000000000000781f1f6300000000781f1f63000000000000000000000000000000000000000000800100000000000000000000000000020000000000000003000000000000000400000000000000050000000000000000000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000200000000000000", 0xe0, 0x28c0}, {&(0x7f0000010940)="0200000000000000000000000000000000000000000000000300000000000000", 0x20, 0x2a40}, {&(0x7f0000010960)="0200000000000000000000000000000000000000000000000400000000000000", 0x20, 0x2b00}, {&(0x7f0000010980)="3d0000000000000002000000000000003e000000000000000000000000000000781f1f63000000000c0000000300000000000000000000000000000003000000", 0x40, 0x2c00}, {&(0x7f00000109c0)="f81f0000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000ff00"/1056, 0x420, 0x3000}, {&(0x7f0000000ac0)="05000000000000000100000000000000ffffffffffffffff000000000000000006000000000000000100000000000000fffffffffffbffff000000000000000007000000000000000100000000000000ffffffffffffffff00000000000009000000000000000000010000000000003371f225fab0620b98706919e1da00ffffffffffffffff000000000000000009000000000000000100000000000000ffffffffffffffff00000000000000000a000000000000000100000000000000ffffffffffffffff00000000000000000b000000000000000100000000000000ffffffffffffffff0000000000000000", 0xee, 0x3820}, {&(0x7f0000010ec0)="d102c1e890010000781f1f630000000003000000000000000000000000000000781f1f6300000000781f1f630000000000000000000000000000000000000000008001000000000000000000000000000c000000000000000d000000000000000e000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000781f1f6300000000781f1f630000000000000000000000000000000000000000008001000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000781f1f6300000000781f1f630000000000000000000000000000000000000000008001000000000000000000000000000700"/352, 0x160, 0x3c00}, {&(0x7f0000011020)="652d8fe95cab1d6a11faaf1e400001000100000000000000781f1f630000000020000000000000001000000006000000c00100000000000002000000000000000c0000000000000002000000000000000100000001000000001000000000000000000000000000000200000000000000020000822fc9e631758aeff4441440d7044700000000000100000001000000120000000000000000000000000000000d000000000000000200000000000000020000000200000000140000000000000000000000000000011400000000000001000000000000000e0000000000000002000000000000000100000001000000001800000000000000000000000000000f0000000000000002000000000000000100000001000000001c000000000000000000000000000010000000000000000200000000000000090000000900000008000000000000000000000000000000090000000000000001000000000000000a0000000000000002000000000000000b0000000000000003000000000000000c0000000000000004000000000000000d0000000000000005000000000000000e0000000000000006000000000000001000000000000000070000000000000011", 0x1c0, 0x4000}, {&(0x7f0000001200)="0c00000000000000100001022e0000000200000000000000100002022e2e00000d000000000000001800050166696c6530000000000016000e00000000000000c803050766696c653100"/96, 0x60, 0x4400}, {&(0x7f0000000e40)="0200000000000000100001022e0000000200000000000000100002022e2e00000b00040000000000180006012e6e696c66730000000000000c000000000000001800050266696c6530000000000000000f000000000000001800050166696c65310000000000000010000000000000001800050166696c65320000000000000010000000000000001800050166696c65330000000000000011000000000000006803090166696c652e636f6c64000000000000000000000000000000000000005d93d9db5530385f0783baa04c1f12e30fd570c45fdcc74dd80bee7b9763226b11a6188ab159c9e4798a7e611fb624e9ba470700c4dfd63d5fe2ceff679c8ca5d83d492d7f03c4d0ce83f574f55c402cb2791e7df02ca234f511813cd8af73dae62c22997171926b8bafd7013d77c8aaaaa63fbd385bd13eea3c5558bed24494b99ed957d721d50f6212d6cb487766dded0b732accafb1f82f98b36976e717260996b286e570d4306d100b76e6b6a3517f8bb3190e879582590730adec6106968058b9e2c503d92b", 0x188, 0x4800}, {&(0x7f0000011300)='syzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkal\x00\x00\x00\x00\x00\x00', 0x420, 0x4c00}, {&(0x7f0000011780)="16aae7c8b63c7c0811faaf1e400000000200000000000000781f1f630000000030000000000000001000000006000000880100000000000002000000000000001000000000000000020000000000000001000000000000000f00000000000000110000000000000002000000000000000100000001000000000400000000000000000000000000000600000000000000020000000000000005000000050000001300000000000000000000000000000014000000000000000100000000000000150000000000000002000000000000001600000000000000030000000000000001180000000000000400000000000000040000000000000000000000000000000100000001000000170000000000000000000000000000000500000000000000000000000000000001000000010000001800000000000000000000000000000003000000000000000000000000000000060000000600000000000000000000000100000000000000020000000000000022000000000000008200000000000000a200"/416, 0x1a0, 0x8000}, {&(0x7f0000011980)="0000000000000000080000000000000009000000000000000a000000000000000b000000000000000c000000000000000d000000000000000e0000000000000010000000000000001100"/96, 0x60, 0x8600}, {&(0x7f0000011a60)="ee1f0000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000ffff0300"/1056, 0x420, 0x8c00}, {&(0x7f0000011e80)="00000000000000000000000000000000781f1f6300000000781f1f63000000000000000000000000000000000000000000800100"/64, 0x40, 0x9480}, {&(0x7f0000011ec0)="01000000000000000004000000000000781f1f6300000000781f1f630000000092ddcb2992ddcb290000000000000000ed4103000000000000000000000000001200"/96, 0x60, 0x9500}, {&(0x7f0000001bc0)="00000000000000000000000000000000781f1f6300000000781f1f63000000000000000000000000000000000000000000800100000000000000000000000000bb755ccb35db3f23d2f959c640b3f7e4f89b3e98084087c7d84e05187ba1a4c70bd1d2fa45df73086e0bcab9b39569f71f45460370d5931d172ea6be44eb1b3c", 0x80, 0x9800}, {&(0x7f0000001000)="00000000000000000000000000000000781f1f63000000007851d90000000000008001000000000000000000000000000eb4e95c2a11348f199606f92f622ff79c77471b9eda918b4741aae7087ed6f3627f32e670fa3869a0a1c4186ca188f8b07df844e618c65793a8bf5df733ca8bd529fe78adc1f327a5b560f60838", 0x7e, 0x9882}, {&(0x7f0000000080)="00000000000000000000000000000000781f1f6300000000781f1f63000000000000000000000000000000000000000000800100"/64, 0x40, 0x9900}, {&(0x7f0000012060)="02000000000000000004000000000000781f1f6300000000781f1f630000000092ddcb2992ddcb290000000000000000ed410200000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000080bd9f690000000004000000000000001a04000000000000781f1f6300000000781f1f630000000092ddcb2992ddcb290000000000000000ed810100000000000000000000000000001400000000000001140000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000081bd9f690000000002000000000000002700000000000000781f1f6300000000781f1f630000000092ddcb2992ddcb290000000000000000eda10100000000000000000000000000001800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000082bd9f690000000002000000000000000a00000000000000781f1f6300000000781f1f630000000092ddcb2992ddcb290000000000000000ed810100000000000000000000000000001c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000083bd9f690000000014000000000000002823000000000000781f1f6300000000781f1f630000000092ddcb2992ddcb290000000000000000ed810200000000000102010000000000000000000000000009000000000000000a000000000000000f000000000000000c000000000000000d00000000000000000000000000000084bd9f690000000002000000000000006400000000000000781f1f6300000000781f1f630000000092ddcb2992ddcb290000000000000000ed810100000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000085bd9f6900000000", 0x300, 0x9a00}, {&(0x7f0000012360)="0200"/32, 0x20, 0xa000}, {&(0x7f0000012380)="0000000000000000000000000000000000000000000000000100000000000000781f1f63000000000c000000000000000200000000000000050000000000000004000000000000000000000000000000781f1f6300000000781f1f63000000000000000000000000000000000000000000800100000000000000000000000000020000000000000003000000000000000400000000000000050000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000200000000000000781f1f630000000035000000000000000800000000000000160000000000000006000000000000000000000000000000781f1f6300000000781f1f63000000000000000000000000000000000000000000800100000000000000000000000000130000000000000014000000000000001500000000000000160000000000000001180000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000300000000000000", 0x1a0, 0xa0c0}, {&(0x7f0000012520)="0200000000000000000000000000000000000000000000000400000000000000", 0x20, 0xa300}, {&(0x7f0000012540)="3a00000000000000050000000000000004000000000000000000000000000000781f1f63000000000c00000003000000781f1f63000000001000000003000000781f1f63000000001000000002000000781f1f630000000005000000020000000000000000000000000000000200"/128, 0x80, 0xa400}, {&(0x7f00000125c0)="e01f0000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000ffffff0100"/1056, 0x420, 0xa800}, {&(0x7f0000000140)="0100"/32, 0x20, 0xac80}, {&(0x7f0000001140)="0100000000000000000000000000000000000000000000000000000000000000b4f3d68506ba7e98d0ac8900caa2e98e70c40eb8e93c774e727485df6e726b0357c05f0c54ec526304fcc89b006d6f9df3720b868dcb6145a808b75c5461305d07c26be302cbc77b62684f08c02e34035d7d5dc8388600"/128, 0x80, 0xae00}, {&(0x7f0000000d00)="0300000000000000000000000000000000000000c4000000000000000000000011bb9ea46b3fcfd6d68cdf88a1846fb9459fcf5dc67eb9b3e1f2bc1bf6df6fc077cfa74a4bf5ac7eefd5af8f21683e816b94c9db0e31b02dd728f30fed88e56ccdf1013f21ee67403ef470db76a0326a842f625a1f4ef6ff1d25316c6786dc1d", 0x80, 0xae80}, {&(0x7f0000012a40)="0300000000000000000000000000000000000000000000000000000000000400", 0x20, 0xaf00}, {&(0x7f0000000180)="0100"/32, 0x20, 0xaf80}, {&(0x7f0000012a80)="050000000000000001000000000000000200000000000000000000000000000006000000000000000100000000000000020000000000000000000000000000000700000000000000010000000000000002000000000000000000000000000000080000000000000001000000000000000200000000000000000000000000000009000000000000000100000000000000020000000000000000000000000000000a000000000000000100000000000000010000000000000000000000000000000b0000000000000001000000000000000100000000000000000000000000000017000000000000000200000000000000ffffffffffffffff000000000000000018000000000000000200000000000000ffffffffffffffff000000000000000019000000000000000200000000000000ffffffffffffffff00000000000000001a000000000000000200000000000000ffffffffffffffff00000000000000001b000000000000000200000000000000ffffffffffffffff00000000000000001c000000000000000200000000000000ffffffffffffffff00000000000000001d000000000000000200000000000000ffffffffffffffff000000000000000021000000000000000200000000000000ffffffffffffffff00000000000000001e000000000000000200000000000000ffffffffffffffff00000000000000001f000000000000000200000000000000ffffffffffffffff000000000000000012000000000000000200000000000000ffffffffffffffff000000000000000023000000000000000200000000000000ffffffffffffffff000000000000000024000000000000000200000000000000ffffffffffffffff000000000000000025000000000000000200000000000000ffffffffffffffff000000000000000026000000000000000200000000000000ffffffffffffffff000000000000000028000000000000000200000000000000ffffffffffffffff000000000000000029000000000000000200000000000000ffffffffffffffff0000000000000000", 0x300, 0xb020}, {&(0x7f0000001100)="22000000000000000200000000000000ffffffffffffffff0000000000000000", 0x20, 0xb400}, {&(0x7f0000012dc0)="13000000000000000200000000000000ffffffffffffffff000000000000000014000000000000000200000000000000ffffffffffffffff0000000000000000", 0x40, 0xbbfd}, {&(0x7f0000001080)="5a83286cef02cd2211faaf1e400006000300000000000000781f1f63000000004000000000000000050000000100000078000000000000000200000000000000030000000000000000000000000000000300000002000000c200000000000000e20000000000000000000000000000000100"/128, 0x80, 0xc000}, {&(0x7f0000012e80)="15000000000000000200000000000000ffffffffffffffff000000000000000027000000000000000200000000000000ffffffffffffffff0000000000000000", 0x40, 0xc400}, {&(0x7f0000012ec0)="16000000000000000200000000000000ffffffffffffffff0000000000000000", 0x20, 0xc800}, {&(0x7f0000012ee0)="0001080000000000000000000000000000000000000000000100000000000000020000000000000022000000000000008200000000000000a200000000000000c200000000000000e200"/96, 0x60, 0xcc00}, {&(0x7f0000012f40)='\x00\x00\x00\x00\x00\x00\x00\x00*\x00\x00\x00\x00\x00\x00\x00+\x00\x00\x00\x00\x00\x00\x00,\x00\x00\x00\x00\x00\x00\x00-\x00\x00\x00\x00\x00\x00\x00.\x00\x00\x00\x00\x00\x00\x00/\x00\x00\x00\x00\x00\x00\x001\x00\x00\x00\x00\x00\x00\x002\x00'/96, 0x60, 0xce00}, {&(0x7f0000012fa0)="ed336a1f90010000781f1f63000000000f000000000000000000000000000000781f1f6300000000781f1f6300000000000000000000000000000000000000000080010000000000010201000000000000000000000000000d000000000000000e000000000000003300000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000781f1f6300000000781f1f630000000000000000000000000000000000000000008001000000000000000000000000001700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000781f1f6300000000781f1f630000000000000000000000000000000000000000008001000000000000000000000000001800"/352, 0x160, 0xd000}, {&(0x7f0000000040)='syzkallers\x00'/32, 0x20, 0xf4a0}, {&(0x7f0000011920)="000109000000000000000000000000000000000000000000010000ecffffff000200000000000000030000000000000004000000000000000500000000000000060000000000000007000000004000000800"/96, 0x60, 0x18400}, {&(0x7f00000007c0)="020000000000343418010000f498e168cdbf9e50000000003f00000000000000000010000000000004000000000000001000000005000000020000000000000030000000000000000300000000000000a003000000000000781f1f6300000000781f1f6300000000781f1f63000000000100320001000100781f1f6300000000004eed0000000000000000000b00000080002000c00010005745cea941714c61b9841bd4a64c433600"/192, 0xc0, 0xff000}], 0x0, &(0x7f0000001840)=ANY=[@ANYBLOB="001f4c0e96634721fa0641d80ae80934dd515774df6bd6e8ac83bb453caa956ceb4e72e49239bc83dd9c189e0f6332ce6042e5e5e84340678e533d81a4cb03a0ff84205a9dc6b04afdd36916c4937ffd20701a2227317c118ba2ef40cb0aaf4c2a3c9c7ad66dcc643e090000001f10b0fee5fb6016d5ad90f6a06b6df6880e34e1378a94af2a8fc7e0651a99ddb26db13fb8b8b63bf0e1ead9f07e9b56808ebf95684a2efab363308ad65e95e1fb6bd7bae280631961c3138da9b14ba50d3463a0a3c785d0363634fbe20b1677d20b2e67e71ec49457cb86151c31f6afe2abcc4067ded509001dec1e5bf678e5e55d19495f9894e5d0d7dc592e6689568b82cf3c826abab6b9193c1b7ed2288f2a9e9b7b86d0e10e8a12d9d1fa9d66913f7c23541c6eef4233ccaeb4d125685b9b7892810d4a50ac7bd623f5c732a01f696ba259612e2d1e5e4b15c078f0604195a7ff786b9154f0a89fb66df6d73760de85cf07776a83608875e7558373d5f30000000000000058198bb377da9ec83cbc10c0c8f5da5d441a7b75171eced6eb8a3015aed8b7453c5a508f8178c340af33f4d0ff0355a15c4cd11237e272eaa73e2cdbc9830a39c6d1f64b7794ffb4a2edf27cb075e48317f7066e2bf6214d56dcd60c9f86133efc598f5f5b8208e8cae13bb09855f52bda911845b5788cc006863699ad01c2513636b05d1695e5f0082b379dba535ef60dfa85861b39f8da826b40d19a24f8d000004b964046fefe094bd7867756e36349576f1d9e16ff5f867ad512cbd1de6db400000000000076521fcf5ce8566e87cd3c95167353e600941d9a40769d280ec46b525d83b3ac10341f55dd60ef5c216373afd347137a51e48f4d3a06afc1f3799c2d75e6e9d7c6de33127351542662555a59b0100ea8710222dd9749a63b902dc55ccaf3e7cd416ffadf65bb211d8d75ff9108adebd18bd6ba74136fec4795731842025cd65425c52eba2759d901b1c6023ea5bb6f70d4d3770e23ba08efc22a15a55ba4d32c3361fad480cd13a47e94394aa9cedc5e863b80ece95af6e7975f638b5e8c0955e5f8fe012461b0f8ac11db05a3e2dc1e5ce91df2a6f66bbdc26886ba152ec3e1ed5b7738426fba0617a38e93359c67428f3f78392231b2b551f59f62cf44"], 0xff) truncate(&(0x7f0000000a80)='./file2\x00', 0x2) r0 = openat$proc_capi20ncci(0xffffffffffffff9c, &(0x7f0000000000), 0x400, 0x0) sendmsg$IPCTNL_MSG_TIMEOUT_DEFAULT_GET(r0, &(0x7f0000000900)={&(0x7f00000001c0)={0x10, 0x0, 0x0, 0x40000000}, 0xc, &(0x7f0000000780)={&(0x7f0000000740)={0x24, 0x4, 0x8, 0x801, 0x0, 0x0, {0x7, 0x0, 0x7}, [@CTA_TIMEOUT_L3PROTO={0x6, 0x2, 0x1, 0x0, 0x18ee}, @CTA_TIMEOUT_L4PROTO={0x5, 0x3, 0x2f}]}, 0x24}}, 0x48191) [ 181.101842][ T7165] loop5: detected capacity change from 0 to 2048 [ 181.111652][ T7169] loop1: detected capacity change from 0 to 2048 00:03:01 executing program 0: sendto$l2tp(0xffffffffffffffff, &(0x7f00000000c0)="7409b0e0f758caf40afbc60e041e1b314474b69c9721b68b0a8ebddfb299cf1eaace9373bc86f34afe5c63ddb607c6a179022bd4db1eec8b79d7788c55966c5522855d72d282b96ed0749dfbe1cd6b6afae4fc152250102c4014a808df91915d78b7f185", 0x64, 0x8080, 0x0, 0x0) r0 = socket$nl_netfilter(0x10, 0x3, 0xc) sendmsg$IPSET_CMD_CREATE(r0, &(0x7f0000002400)={0x0, 0x0, &(0x7f0000000080)={&(0x7f0000000000)={0x60, 0x2, 0x6, 0x401, 0x0, 0x0, {}, [@IPSET_ATTR_FAMILY={0x5, 0x5, 0x3}, @IPSET_ATTR_PROTOCOL={0x5, 0x1, 0x6}, @IPSET_ATTR_TYPENAME={0x12, 0x3, 'bitmap:ip,mac\x00'}, @IPSET_ATTR_FAMILY={0x5, 0x5, 0x2}, @IPSET_ATTR_DATA={0x14, 0x7, 0x0, 0x1, [@IPSET_ATTR_MAXELEM={0x8, 0x13, 0x0}, @IPSET_ATTR_HASHSIZE={0x8}]}, @IPSET_ATTR_SETNAME={0x9, 0x2, 'syz0\x00'}]}, 0x60}, 0x1, 0x0, 0x0, 0x40}, 0x8800) sendmsg$IPCTNL_MSG_CT_GET(r0, &(0x7f0000000280)={&(0x7f0000000140)={0x10, 0x0, 0x0, 0x800}, 0xc, &(0x7f0000000240)={&(0x7f0000000180)={0xa4, 0x1, 0x1, 0x5, 0x0, 0x0, {0x2}, [@CTA_TUPLE_MASTER={0x90, 0xe, 0x0, 0x1, [@CTA_TUPLE_ZONE={0x6, 0x3, 0x1, 0x0, 0x1}, @CTA_TUPLE_PROTO={0xc, 0x2, 0x0, 0x1, {0x5, 0x1, 0x11}}, @CTA_TUPLE_IP={0x2c, 0x1, 0x0, 0x1, @ipv6={{0x14, 0x3, @ipv4={'\x00', '\xff\xff', @initdev={0xac, 0x1e, 0x1, 0x0}}}, {0x14, 0x4, @ipv4={'\x00', '\xff\xff', @broadcast}}}}, @CTA_TUPLE_ZONE={0x6, 0x3, 0x1, 0x0, 0x1}, @CTA_TUPLE_ZONE={0x6, 0x3, 0x1, 0x0, 0x4}, @CTA_TUPLE_IP={0x2c, 0x1, 0x0, 0x1, @ipv6={{0x14, 0x3, @mcast1}, {0x14, 0x4, @remote}}}, @CTA_TUPLE_ZONE={0x6, 0x3, 0x1, 0x0, 0x2}, @CTA_TUPLE_ZONE={0x6, 0x3, 0x1, 0x0, 0x4}]}]}, 0xa4}, 0x1, 0x0, 0x0, 0x4000}, 0x11) [ 181.137305][ T7169] UDF-fs: INFO Mounting volume 'LinuxUDF', timestamp 2022/09/12 12:00 (1000) [ 181.151694][ T7172] NILFS (loop5): segctord starting. Construction interval = 5 seconds, CP frequency < 30 seconds [ 181.152396][ T7165] NILFS (loop5): bad btree node (ino=16, blocknr=15): level = 0, flags = 0x0, nchildren = 0 [ 181.157438][ T7165] NILFS error (device loop5): nilfs_bmap_lookup_contig: broken bmap (inode number=16) [ 181.159931][ T7165] [ 181.160501][ T7165] ====================================================== [ 181.162221][ T7165] WARNING: possible circular locking dependency detected [ 181.163999][ T7165] 6.0.0-rc7-syzkaller-18095-gbbed346d5a96 #0 Not tainted [ 181.165791][ T7165] ------------------------------------------------------ [ 181.167559][ T7165] syz-executor.5/7165 is trying to acquire lock: [ 181.169132][ T7165] ffff00011c8f6890 (&nilfs->ns_sem){++++}-{3:3}, at: __nilfs_error+0xb4/0x284 [ 181.171450][ T7165] [ 181.171450][ T7165] but task is already holding lock: [ 181.173328][ T7165] ffff00011201d470 (&dat_lock_key){.+.+}-{3:3}, at: nilfs_get_block+0x64/0x364 [ 181.175602][ T7165] [ 181.175602][ T7165] which lock already depends on the new lock. [ 181.175602][ T7165] [ 181.178284][ T7165] [ 181.178284][ T7165] the existing dependency chain (in reverse order) is: [ 181.180584][ T7165] [ 181.180584][ T7165] -> #1 (&dat_lock_key){.+.+}-{3:3}: [ 181.182492][ T7165] down_read+0x5c/0x78 [ 181.183645][ T7165] nilfs_count_free_blocks+0x2c/0x6c [ 181.185082][ T7165] nilfs_cleanup_super+0x118/0x1f0 [ 181.186500][ T7165] nilfs_put_super+0x54/0x9c [ 181.187791][ T7165] generic_shutdown_super+0x8c/0x190 [ 181.189267][ T7165] kill_block_super+0x30/0x78 [ 181.190645][ T7165] deactivate_locked_super+0x70/0xe8 [ 181.191967][ T7165] deactivate_super+0xd0/0xd4 [ 181.193293][ T7165] cleanup_mnt+0x1f8/0x234 [ 181.194543][ T7165] __cleanup_mnt+0x20/0x30 [ 181.195814][ T7165] task_work_run+0xc4/0x14c [ 181.197092][ T7165] do_notify_resume+0x174/0x1f0 [ 181.198440][ T7165] el0_svc+0x9c/0x150 [ 181.199424][ T7165] el0t_64_sync_handler+0x84/0xf0 [ 181.200741][ T7165] el0t_64_sync+0x18c/0x190 [ 181.201994][ T7165] [ 181.201994][ T7165] -> #0 (&nilfs->ns_sem){++++}-{3:3}: [ 181.203918][ T7165] __lock_acquire+0x1530/0x30a4 [ 181.205267][ T7165] lock_acquire+0x100/0x1f8 [ 181.206577][ T7165] down_write+0x5c/0xcc [ 181.207760][ T7165] __nilfs_error+0xb4/0x284 [ 181.209024][ T7165] nilfs_bmap_lookup_contig+0x98/0xc0 [ 181.210628][ T7165] nilfs_get_block+0x7c/0x364 [ 181.211935][ T7165] block_truncate_page+0x1b4/0xab4 [ 181.213372][ T7165] nilfs_truncate+0xb8/0x178 [ 181.214676][ T7165] nilfs_setattr+0xf8/0x164 [ 181.216021][ T7165] notify_change+0x758/0x7f0 [ 181.217366][ T7165] do_truncate+0x108/0x150 [ 181.218506][ T7165] vfs_truncate+0x1dc/0x24c [ 181.219643][ T7165] do_sys_truncate+0x94/0x140 [ 181.221032][ T7165] __arm64_sys_truncate+0x20/0x30 [ 181.222518][ T7165] el0_svc_common+0x138/0x220 [ 181.223818][ T7165] do_el0_svc+0x48/0x164 [ 181.225025][ T7165] el0_svc+0x58/0x150 [ 181.226165][ T7165] el0t_64_sync_handler+0x84/0xf0 [ 181.227562][ T7165] el0t_64_sync+0x18c/0x190 [ 181.229048][ T7165] [ 181.229048][ T7165] other info that might help us debug this: [ 181.229048][ T7165] [ 181.231675][ T7165] Possible unsafe locking scenario: [ 181.231675][ T7165] [ 181.233571][ T7165] CPU0 CPU1 [ 181.234910][ T7165] ---- ---- 00:03:01 executing program 0: sendto$l2tp(0xffffffffffffffff, &(0x7f00000000c0)="7409b0e0f758caf40afbc60e041e1b314474b69c9721b68b0a8ebddfb299cf1eaace9373bc86f34afe5c63ddb607c6a179022bd4db1eec8b79d7788c55966c5522855d72d282b96ed0749dfbe1cd6b6afae4fc152250102c4014a808df91915d78b7f185", 0x64, 0x8080, 0x0, 0x0) r0 = socket$nl_netfilter(0x10, 0x3, 0xc) sendmsg$IPSET_CMD_CREATE(r0, &(0x7f0000002400)={0x0, 0x0, &(0x7f0000000080)={&(0x7f0000000000)={0x60, 0x2, 0x6, 0x401, 0x0, 0x0, {}, [@IPSET_ATTR_FAMILY={0x5, 0x5, 0x3}, @IPSET_ATTR_PROTOCOL={0x5, 0x1, 0x6}, @IPSET_ATTR_TYPENAME={0x12, 0x3, 'bitmap:ip,mac\x00'}, @IPSET_ATTR_FAMILY={0x5, 0x5, 0x2}, @IPSET_ATTR_DATA={0x14, 0x7, 0x0, 0x1, [@IPSET_ATTR_MAXELEM={0x8, 0x13, 0x0}, @IPSET_ATTR_HASHSIZE={0x8}]}, @IPSET_ATTR_SETNAME={0x9, 0x2, 'syz0\x00'}]}, 0x60}, 0x1, 0x0, 0x0, 0x40}, 0x8800) sendmsg$IPCTNL_MSG_CT_GET(r0, &(0x7f0000000280)={&(0x7f0000000140)={0x10, 0x0, 0x0, 0x800}, 0xc, &(0x7f0000000240)={&(0x7f0000000180)={0xa4, 0x1, 0x1, 0x5, 0x0, 0x0, {0x2}, [@CTA_TUPLE_MASTER={0x90, 0xe, 0x0, 0x1, [@CTA_TUPLE_ZONE={0x6, 0x3, 0x1, 0x0, 0x1}, @CTA_TUPLE_PROTO={0xc, 0x2, 0x0, 0x1, {0x5, 0x1, 0x11}}, @CTA_TUPLE_IP={0x2c, 0x1, 0x0, 0x1, @ipv6={{0x14, 0x3, @ipv4={'\x00', '\xff\xff', @initdev={0xac, 0x1e, 0x1, 0x0}}}, {0x14, 0x4, @ipv4={'\x00', '\xff\xff', @broadcast}}}}, @CTA_TUPLE_ZONE={0x6, 0x3, 0x1, 0x0, 0x1}, @CTA_TUPLE_ZONE={0x6, 0x3, 0x1, 0x0, 0x4}, @CTA_TUPLE_IP={0x2c, 0x1, 0x0, 0x1, @ipv6={{0x14, 0x3, @mcast1}, {0x14, 0x4, @remote}}}, @CTA_TUPLE_ZONE={0x6, 0x3, 0x1, 0x0, 0x2}, @CTA_TUPLE_ZONE={0x6, 0x3, 0x1, 0x0, 0x4}]}]}, 0xa4}, 0x1, 0x0, 0x0, 0x4000}, 0x11) [ 181.236251][ T7165] lock(&dat_lock_key); [ 181.237355][ T7165] lock(&nilfs->ns_sem); [ 181.239173][ T7165] lock(&dat_lock_key); [ 181.240954][ T7165] lock(&nilfs->ns_sem); [ 181.242094][ T7165] [ 181.242094][ T7165] *** DEADLOCK *** [ 181.242094][ T7165] [ 181.244219][ T7165] 5 locks held by syz-executor.5/7165: [ 181.245688][ T7165] #0: ffff00011c174460 (sb_writers#14){.+.+}-{0:0}, at: mnt_want_write+0x20/0x64 [ 181.248269][ T7165] #1: ffff00011196b228 (&sb->s_type->i_mutex_key#20){+.+.}-{3:3}, at: do_truncate+0xf4/0x150 [ 181.251144][ T7165] #2: ffff00011c174650 (sb_internal#2){.+.+}-{0:0}, at: nilfs_setattr+0x84/0x164 [ 181.253629][ T7165] #3: ffff00011c8f6aa0 (&nilfs->ns_segctor_sem){++++}-{3:3}, at: nilfs_transaction_begin+0x214/0x384 [ 181.256528][ T7165] #4: ffff00011201d470 (&dat_lock_key){.+.+}-{3:3}, at: nilfs_get_block+0x64/0x364 [ 181.258812][ T7165] [ 181.258812][ T7165] stack backtrace: [ 181.260512][ T7165] CPU: 0 PID: 7165 Comm: syz-executor.5 Not tainted 6.0.0-rc7-syzkaller-18095-gbbed346d5a96 #0 [ 181.263130][ T7165] Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 09/30/2022 [ 181.265864][ T7165] Call trace: [ 181.266707][ T7165] dump_backtrace+0x1c4/0x1f0 [ 181.267997][ T7165] show_stack+0x2c/0x54 [ 181.269112][ T7165] dump_stack_lvl+0x104/0x16c [ 181.270360][ T7165] dump_stack+0x1c/0x58 [ 181.271451][ T7165] print_circular_bug+0x2c4/0x2c8 [ 181.272786][ T7165] check_noncircular+0x14c/0x154 [ 181.274064][ T7165] __lock_acquire+0x1530/0x30a4 [ 181.275383][ T7165] lock_acquire+0x100/0x1f8 [ 181.276562][ T7165] down_write+0x5c/0xcc [ 181.277769][ T7165] __nilfs_error+0xb4/0x284 [ 181.279030][ T7165] nilfs_bmap_lookup_contig+0x98/0xc0 [ 181.280453][ T7165] nilfs_get_block+0x7c/0x364 [ 181.281685][ T7165] block_truncate_page+0x1b4/0xab4 [ 181.283052][ T7165] nilfs_truncate+0xb8/0x178 [ 181.284273][ T7165] nilfs_setattr+0xf8/0x164 [ 181.285487][ T7165] notify_change+0x758/0x7f0 [ 181.286692][ T7165] do_truncate+0x108/0x150 [ 181.287914][ T7165] vfs_truncate+0x1dc/0x24c [ 181.289103][ T7165] do_sys_truncate+0x94/0x140 [ 181.290368][ T7165] __arm64_sys_truncate+0x20/0x30 [ 181.291706][ T7165] el0_svc_common+0x138/0x220 [ 181.292925][ T7165] do_el0_svc+0x48/0x164 [ 181.294052][ T7165] el0_svc+0x58/0x150 [ 181.295115][ T7165] el0t_64_sync_handler+0x84/0xf0 [ 181.296471][ T7165] el0t_64_sync+0x18c/0x190 [ 181.309210][ T7165] Remounting filesystem read-only [ 181.310589][ T7165] NILFS (loop5): bad btree node (ino=16, blocknr=15): level = 0, flags = 0x0, nchildren = 0 [ 181.315419][ T7165] NILFS error (device loop5): nilfs_bmap_last_key: broken bmap (inode number=16) [ 181.318628][ T7165] NILFS (loop5): error -5 truncating bmap (ino=16) 00:03:01 executing program 1: r0 = syz_open_procfs(0x0, &(0x7f0000000040)='attr/exec\x00') write$sysctl(r0, 0x0, 0x0) r1 = syz_open_procfs(0x0, &(0x7f0000000040)='attr/exec\x00') write$sysctl(r1, 0x0, 0x0) kcmp$KCMP_EPOLL_TFD(0xffffffffffffffff, 0x0, 0x7, 0xffffffffffffffff, &(0x7f0000000080)={r0, r1, 0x4}) syz_mount_image$udf(&(0x7f0000000000), &(0x7f0000000100)='./file0\x00', 0x100000, 0x25, &(0x7f0000000200)=[{&(0x7f00000001c0)="f6f59bd275", 0x5, 0x1}, {&(0x7f0000000dc0)="0501", 0x2, 0x6}, {&(0x7f0000011900)="0700020035000100927f3000e30700000400000005000000002600004d000000001600007500000000e0000090000000001e00000101000000140000f5070000", 0x40, 0x8}, {&(0x7f00000119e0)="002a4c696e757820554446465300000000000000000000000405000000000000", 0x20, 0xff}, {&(0x7f0000000040)="020002002200010076b5f00100010000002000006000000000200000e0070000851febfebe06d2956dac161f473b", 0x2e, 0xa8c}, {&(0x7f0000010000)="0042454130310100"/32, 0x20, 0x8000}, {&(0x7f0000000ac0)="004e535230320100000000000000000000000000000000000000000000000000e68527d15138f260a3fd8f97b67ecd04dd1a83b427f95fe92bf9a2b3ec4cb8e8f3b7f4ac1174bc2658169baf625a246a0f22dafce1b6179e25252a5239bf7bf5a5e2bd290f71bc93cbb456a31d8f792794becccbda497e0c65b2", 0x7a, 0x8800}, {&(0x7f0000010060)="010002001d0001001aaef001600000000100000000000000084c696e757855444600000000000000000000000000000000000000000000090100010002000300010000000100000008313233343536373831323334353637384c696e757855444600"/128, 0x80, 0xc000}, {&(0x7f00000100e0)="0000000000000019004f53544120436f6d7072657373656420556e69636f646500000000000000000000000000000000000000000000000000000000000000000000000000000000004f53544120436f6d7072657373656420556e69636f64650000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002a4c696e7578206d6b756466667320322e33000000000000000000000000000010e607090c0c00354c1256002a4c696e7578205544464653000000000000000000000004050000", 0xe0, 0xc0c0}, {&(0x7f00000101c0)="000000000000000001000000000000000000000000000000000000000000000006000200660001006ba8e8016100000002000000004f53544120436f6d7072657373656420556e69636f646500000000000000000000000000000000000000000000000000000000000000000000000000000000084c696e7578554446000000", 0x80, 0xc1e0}, {&(0x7f0000000b40)="000000000000000000000000000000000000000900020000002a4f5354412055444620436f6d706c69616e74000000005001000000000000000200001000000000000000000000004000000001000000002a4c696e75782055444646530000000000000000000000040500"/128, 0x80, 0xc2c0}, {&(0x7f00000102c0)="00000000000000000000000000000000002000008000000002400000002a554446205370617261626c6520506172746974696f6e500104050000000001000000200002003801000070000000f007000000000000000000000000000000000000050002007e000100879cf001620000000300000001000000002b4e53523032000000000000000000000000000000000000000000000000000000000000000000000200"/192, 0xc0, 0xc3a0}, {&(0x7f0000010380)="0000000000000000000000000000000000000000000000000400000010050000d0020000002a4c696e7578205544464653000000000000000000000004050000", 0x40, 0xc4a0}, {&(0x7f00000103c0)="07000200ae000100927f3000630000000400000005000000002600004d000000001600007500000000e0000090000000001e00000101000000140000f5070000", 0x40, 0xc600}, {&(0x7f0000010480)='\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\t\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\b\x00', 0x20, 0xc8e4}, {&(0x7f00000104c0)="0800020061e400000000f0016500"/32, 0x20, 0xca00}, {&(0x7f00000104e0)="000002009100010021d4280170000000002a5544462053706172696e67205461626c650000000000500104050000feff1f00000000000000ffffffff10010000ffffffff30010000ffffffff50010000ffffffff70010000ffffffff90010000ffffffffb0010000ffffffffd0010000fffffffff0010000ffffffff10020000ffffffff30020000ffffffff50020000ffffffff70020000ffffffff90020000ffffffffb0020000ffffffffd0020000fffffffff0020000ffffffff10130000ffffffff30030000ffffffff50030000ffffffff70030000ffffffff90030000ffffffffb0030000ffffffffd0030000fffffffff0030000ffffffff10040000ffffffff30040000ffffff2051040000ffffffff70040400ffffffff90040000ffffffffb1040000ffffffffd0040000fffffffff00400"/320, 0x140, 0xe000}, {&(0x7f0000010620)="09000200d70001000acb7600800000000010e607090c0c00355f4d010100000000000000000000001800000000000000000000000000000000000000000000000000000000000000010000002e000000b0020000d0020000002a4c696e757820554446465300000000000000000000000405000000000000060000000200000050015001010200"/160, 0xa0, 0x10000}, {&(0x7f00000106c0)="080002007d0001000000f0018100"/32, 0x20, 0x10201}, {&(0x7f0000000580)="0501020052000100beaba0004000000000000000040000000100000500000000000000040000000000000000a57c00000100000000000000000000000000000000000000000000000010e607090c0c00354c12560010e607090c0c00354c12560010e607090c0c00354c12560100000000000000000000000000000000000000002a4c696e7578205544464653000000000000000000000004050000000000001000"/192, 0xc0, 0xa1ffe}, {&(0x7f0000010780)="0001020037000100bb77f001100000000010e607090c0c00354c12560300030001000000010000000000000000000000004f53544120436f6d7072657373656420556e69636f646500000000000000000000000000000000000000000000000000000000000000000000000000000000084c696e757855444600000000000000", 0x80, 0xa4000}, {&(0x7f0000010800)="00000000000000000000000000000009004f53544120436f6d7072657373656420556e69636f646500000000000000000000000000000000000000000000000000000000000000000000000000000000084c696e7578554446000000000000000000000000000000000000000000000908436f707972696768740000000000000000000000000000000000000000000a084162737472616374000000000000000000000000000000000000000000000900020000200000000000000000000000002a4f5354412055444620436f6d706c69616e74000000005001000000000000", 0xe0, 0xa40e0}, {&(0x7f00000108e0)="050102007c000100e5c6a8002000000000000000040000000100000400000000000000000000000000000000a53c00000200000000000000440100000000000001000000000000000010e607090c0c00354c12560010e607090c0c00355e59530010e607090c0c00355e59530100000000000000000000000000000000000000002a4c696e75782055444646530000000000000000000000040500000000000000000000000000000000000008000000440100003000"/192, 0xc0, 0xa6000}, {&(0x7f00000109a0)="05010200e4000100009920012100000000000000040000000100000400000000000003000000000000000000a57c00000100000000000000800000000000000000000000000000000010e607090c0c00355e59530010e607090c0c00355e59530010e607090c0c00355e59530100000000000000000000000000000000000000002a4c696e7578205544464653000000000000000000000004050000000000001100000000000000000000008000000001010200b10001001b5818002100000001000a000002000020000000000000000000000000000000010102004b00010059b01c0021000000010000060002000022000000000000001200000000000866696c65300101020078000100c1751c0021000000010000060002000026000000000000001300000000000866696c653100"/320, 0x140, 0xa6200}, {&(0x7f0000000ec0)="050102003a00010060ffb0002200000000000000040000000100000500000000000001000000000000000000a57c000001000000000000001a0400000000000003000000000000000010e607090c0c00355e59530010e607090c0c00355e59530010e607090c0c00355e59530100000000000000000000000000000000000000002a4c696e757820554446465300000000000000000000000405000000000000120000000000000000000000100000001a0400002300000000000000000000002a45b58d713cad61e7dab36b5e8959ad96994d6085abb47ce917bc94880aa00742f3855b9ccb18059562a101f4e75933c6193af916d81015a92428ffd390aefc4db306b3e4962dde7f8fd647a9634ce65ff9c98875f692fa9b6252d64aade0a52ff67dbf3c4346262674d552c49d391385d185", 0x133, 0xa6400}, {&(0x7f0000010ba0)='syzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkal\x00\x00\x00\x00\x00\x00', 0x420, 0xa6600}, {&(0x7f0000011180)="05010200000001009d72c0002800000000000500000000000000000500000000000001000000000000000000a57c00000200000000000000282300000000000012000000000000000010e607090c0c00355e59530010e607090c0c00355e59530010e607090c0c00355e59530100000000000000000039e8a954000000000000002a4c696e75782055444646530000000000000000000000040500000000000015000000000000000000000020000000000e0000290000000000000000000000281500003100"/224, 0xe0, 0xa7000}, {&(0x7f0000000640)="01010200c00001001b5818003000000001000a00000200002000000000000000000000000000000001010200c40001007ae92c003000000001000116000200004000000000000000100000000000084e6f6e2d416c6c6f63617461626c6520537061636501010200e4000100f0a31c00300000000100020600020000210000000d0000001100000000000866696c653001010200d200010039481c0030000000010000060002000027000000000000001400000000000866696c6531010102002e0001008f4e1c0030000000010000060002000028000000000000001500000000000866696c653201010200dd000100315b1c0030000000010000060002000028000000000000001600000000000866696c653301010200e7000100f79b2000300000000100000a000200003c000000000000001700000000000866696c652e636f6c6400"/352, 0x160, 0xa8000}, {&(0x7f00000113c0)="05010200c90001004b3404013c00000000000000040000000100000500000000000003000000000000000000a57c000001000000640000000000000000000000000000000010e607090c0c00355e59530010e607090c0c00355e59530010e607090c0c00355e59530100000000000000000000000000000000000000002a4c696e7578205544464653000000000000000000000004050000000000001700000000000000000000006400000073797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6cff7273797a6b616c6c657273797a6b616c6c65727300"/284, 0x11c, 0xa9800}, {&(0x7f0000000cc0)="01000200a40001001aaef001e00700000100000000000000084c696e75785544460000000000000000000000000000000000010002000300010000000100000008313233343536373831323334353637384c696e75785544460000000000000000000000000000000000000000000000000000000000000099ba5e04e45b4d989aa1c1f08d8fb273e4d8f842e3deeed757eab71508d863d7f8c57f1b4b42e1fca7db856b4577f7519ad6996e31ff8acc65f87b0a667c5d221f9a6bd53078564c", 0xc0, 0xfc000}, {&(0x7f0000000bc0)="0000000000000019004f53544121436f6d7072657373656420556e69636f646500000000000000000000000000000200000000000000000000000000000000000000000000000000004f53544120436f6d7072657373656420556e69636f64650000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002a4c01000100206d6b756466667320322e33000000000000000000000000000010e607090c0c00354c1256002a4c6900000000000000040500"/224, 0xe0, 0xfc0c0}, {&(0x7f00000007c0)="190000000000000000000000000000000000000900020002002a4f5354412055444620436f6d706c69616e740000000050010000000000000002000010000000000001000000000000005025f74000000001000000002a4c696e7578205544464653000000000000000000000004050000000000000000000000000000000000c0a19d095286d8962c9d3c49a1e6ab5fc1a748d4e37345d5b16d7b7740cc1a10cc570749d073ac380d464879a0c80c6c9e6b55ae44c566b9a7ce5a7f4580dcf46b0e74a9d79c031d4eb80d929765ef282d4e67a8ffbc846db8591b4eb0", 0xdd, 0xfc2c0}, {&(0x7f0000000980)="00000000000000000000000000000000002000008000000002400000002a554446205370617261626c6520506172746974696f6e500104050000000001000000200002003801000070000000f0070000000000000000000000000000000000000500020005000100879cf001e20700000300000001000000002b4e53523032000000000000000000000000000000000000000000000000000000000000000000000200"/192, 0xc0, 0xfc3a0}, {&(0x7f00000118c0)="0000000000000000000000000000000000000000000000000400000010050000d0020000002a4c696e7578205544464653000000000000000000000004050000", 0x40, 0xfc4a3}, {&(0x7f00000119c0)='\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\t\x00'/32, 0x20, 0xfc8e0}, {&(0x7f0000001100)="000002001800010021d42801f0070000002a5544462053706172696e67205461626c65000000000050010405000000002000ffffffff10010000ffffffff30010000ffffffff50010000ffffffff70010000ffffffff90010000ffffffffb0010000ffffffffd0010000fffffffff0010000ffffffff10020000ffffffff30020000ffffffff50020000ffffffff70020000ffffffff90020000ffffffff80020000ffffffffd0020000fffffffff0020000ffffffff10030000ffffffff30030000ffffffff50030000ffffffff70030000ffffffff90030000ffffffffb0030000ffffffffd0030000fffffffff0030000ffffffff10040000ffffffff30040000ffffffff50040000ffffffff70040000ffffffff90040000ffffffffb0040000ffffffffd0040000fffffffff004000000000000000000000000000000008c58769b598272941536357f7851ad688bfec95b2f6d5a182b2d113cb5590d413bf2b9ca14ed8fd0e9125b4f6d385dfae4aa0678d4b43c08b96d53cf2120846ef58a6396af12e1243e1898651a13b600d049260b2adb3c3f4e5f64c4d1aed5e362426701", 0x1a4, 0xfe000}, {&(0x7f0000011b60)="020002002700010076b5f001ff070000002000006000000000200000e0070000", 0x20, 0xffe00}], 0x1000008, &(0x7f0000000e00)=ANY=[@ANYBLOB='umask=00000000000000000000314,anchor=00000000000000002047,uid=ignore,unhide,gid=forget,nostrict,fileset=00000000000000032767,iocharset=cp861,gid=', @ANYRESDEC=0x0, @ANYBLOB="00000000000000bb40118d07"], 0x1) (async) openat$cgroup_ro(0xffffffffffffff9c, &(0x7f00000001c0)='memory.current\x00', 0x275a, 0x0) [ 181.336701][ T7184] loop1: detected capacity change from 0 to 2048 [ 181.340330][ T7184] UDF-fs: INFO Mounting volume 'LinuxUDF', timestamp 2022/09/12 12:00 (1000) 00:03:01 executing program 3: r0 = socket$inet_tcp(0x2, 0x1, 0x0) bind$inet(r0, &(0x7f0000000100)={0x2, 0x4e20, @multicast2}, 0x62) setsockopt$inet_tcp_TCP_CONGESTION(r0, 0x6, 0xd, &(0x7f00000000c0)='htcp\x00', 0x5) setsockopt$inet_tcp_int(r0, 0x6, 0x2, &(0x7f0000000080), 0x4) r1 = openat(0xffffffffffffffff, &(0x7f00000002c0)='/proc/self/exe\x00', 0x0, 0x0) r2 = syz_open_procfs(0x0, &(0x7f0000000040)='attr/exec\x00') write$sysctl(r2, 0x0, 0x0) r3 = syz_open_procfs(0x0, &(0x7f0000000040)='attr/exec\x00') write$sysctl(r3, 0x0, 0x0) sendfile(r2, r3, &(0x7f0000000000)=0x6, 0x2) setsockopt$SO_ATTACH_FILTER(r0, 0x1, 0x1a, &(0x7f0000000300)={0x1, &(0x7f00000001c0)=[{0x6, 0x0, 0x0, 0x3654}]}, 0x10) connect$inet(r0, &(0x7f0000000180)={0x2, 0x4e20, @loopback}, 0x10) sendfile(r0, r1, 0x0, 0x101000011) recvmsg(r0, &(0x7f0000000580)={0x0, 0x41, &(0x7f0000000500)=[{&(0x7f0000000740)=""/4084, 0xfffffe1f}], 0x6, 0x0, 0xfffffffffffffcc9}, 0x700) 00:03:01 executing program 0: sendto$l2tp(0xffffffffffffffff, &(0x7f00000000c0)="7409b0e0f758caf40afbc60e041e1b314474b69c9721b68b0a8ebddfb299cf1eaace9373bc86f34afe5c63ddb607c6a179022bd4db1eec8b79d7788c55966c5522855d72d282b96ed0749dfbe1cd6b6afae4fc152250102c4014a808df91915d78b7f185", 0x64, 0x8080, 0x0, 0x0) r0 = socket$nl_netfilter(0x10, 0x3, 0xc) sendmsg$IPSET_CMD_CREATE(r0, &(0x7f0000002400)={0x0, 0x0, &(0x7f0000000080)={&(0x7f0000000000)={0x60, 0x2, 0x6, 0x401, 0x0, 0x0, {}, [@IPSET_ATTR_FAMILY={0x5, 0x5, 0x3}, @IPSET_ATTR_PROTOCOL={0x5, 0x1, 0x6}, @IPSET_ATTR_TYPENAME={0x12, 0x3, 'bitmap:ip,mac\x00'}, @IPSET_ATTR_FAMILY={0x5, 0x5, 0x2}, @IPSET_ATTR_DATA={0x14, 0x7, 0x0, 0x1, [@IPSET_ATTR_MAXELEM={0x8, 0x13, 0x0}, @IPSET_ATTR_HASHSIZE={0x8}]}, @IPSET_ATTR_SETNAME={0x9, 0x2, 'syz0\x00'}]}, 0x60}, 0x1, 0x0, 0x0, 0x40}, 0x8800) sendmsg$IPCTNL_MSG_CT_GET(r0, &(0x7f0000000280)={&(0x7f0000000140)={0x10, 0x0, 0x0, 0x800}, 0xc, &(0x7f0000000240)={&(0x7f0000000180)={0xa4, 0x1, 0x1, 0x5, 0x0, 0x0, {0x2}, [@CTA_TUPLE_MASTER={0x90, 0xe, 0x0, 0x1, [@CTA_TUPLE_ZONE={0x6, 0x3, 0x1, 0x0, 0x1}, @CTA_TUPLE_PROTO={0xc, 0x2, 0x0, 0x1, {0x5, 0x1, 0x11}}, @CTA_TUPLE_IP={0x2c, 0x1, 0x0, 0x1, @ipv6={{0x14, 0x3, @ipv4={'\x00', '\xff\xff', @initdev={0xac, 0x1e, 0x1, 0x0}}}, {0x14, 0x4, @ipv4={'\x00', '\xff\xff', @broadcast}}}}, @CTA_TUPLE_ZONE={0x6, 0x3, 0x1, 0x0, 0x1}, @CTA_TUPLE_ZONE={0x6, 0x3, 0x1, 0x0, 0x4}, @CTA_TUPLE_IP={0x2c, 0x1, 0x0, 0x1, @ipv6={{0x14, 0x3, @mcast1}, {0x14, 0x4, @remote}}}, @CTA_TUPLE_ZONE={0x6, 0x3, 0x1, 0x0, 0x2}, @CTA_TUPLE_ZONE={0x6, 0x3, 0x1, 0x0, 0x4}]}]}, 0xa4}, 0x1, 0x0, 0x0, 0x4000}, 0x11) 00:03:01 executing program 5: syz_mount_image$nilfs2(&(0x7f00000000c0), &(0x7f0000000100)='./file0\x00', 0x100000, 0x38, &(0x7f0000000200)=[{&(0x7f0000000880)='\x00', 0x1}, {&(0x7f00000008c0)="1100fbbadd", 0x5, 0x1}, {&(0x7f00000106a0)="010000", 0x3, 0x6}, {&(0x7f0000011720)='/tmp/syz-imagegen3787079791/file0/file0\x00'/64, 0x40, 0x9}, {&(0x7f00000009c0)="020000000000343418010000f498e16897043d98000000003f00000000000000000010000000000004000000000000001000000005000000010000000000000004000000000000000000000000000000e003000000000000781f1f6300000000781f1f6300000000781f1f63000000000100320000000100781f1f6300000000004eed0000000000000000000b00000080002000c00010005745cea941714c61b9841bd4a64c433600"/192, 0xc0, 0x400}, {&(0x7f0000010200)="0200000000000000100001022e0000000200000000000000100002022e2e00000b00000000000000e00306012e6e696c667300"/64, 0x40, 0x1400}, {&(0x7f00000012c0)="f41f000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200098ab8dc400002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000713568942e28999cae2000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000ccff0d2100002000000020000000200000ff0f000000000000000000000000000000000000000000000000000000000000b857bfc0ef7c59073fbea67e3a8b1a4b0e430b1b02d43cddefd3a5e5186c9daad83a4700674b15bc4fd900681f19f6b32e1cb067bd5cd019ee952c231902517f50489e52e1710e00d1bd2aa0631b9d9c073fc0d80be08660ac88627af182fc37da295d455c3ac006650b055f52da71a4782997e92da0a93e82924b281030b3af07eefafb2feb22996b53e044c3f4adc1674d8bbaed211fb0afffaa6383651cfc67979d380bd965c1e119469af2ec455803fef7bc5484341c9b986c58e13c1d5fac5756a49ca168a0035e25f7034751deef40832ef538c98b956c130f1eb4b057556a9e6278094ee44c48ab5193a90ec86cb901cce267e5f3d44c37fef409ab70cc6729e102bebd84fc3cc7963d46a087e06213f426b93b9f210eee3d23d30a75fd58cdcd8ad74867589c32e75119efbde9d54a661c4be42c", 0x561, 0x17ff}, {&(0x7f0000010660)="00000000000000000000000000000000781f1f6300000000781f1f63000000000000000000000000000000000000000000800100"/64, 0x40, 0x2080}, {&(0x7f0000010700)="00000000000000000000000000000000781f1f6300000000781f1f63000000000000000000000000000000000000000000800100"/64, 0x40, 0x2380}, {&(0x7f0000000980)="00000000000000000000000000000000781f1f6300000000781f1f63000000000000000000000000000000000000000000800100"/64, 0x40, 0x2400}, {&(0x7f0000010780)="00000000000000000000000000000000781f1f6300000000781f1f63000000000000000000000000000000000000000000800100"/64, 0x40, 0x2480}, {&(0x7f0000001c40)="00000000000000000000000000000000781f1f6300000000781f1f6300000000000000000000000000000000000000000080010000000000000000000000005b0d71bedc67bfe2aa78246cc880fa60173b9b92105c36da53fafb922ad6e2ed0b79d6f232aed1ab2373296e31685439b91de925fb8c9a8aeefb9e454543004509", 0x80, 0x2500}, {&(0x7f0000010800)="00000000000000000000000000000000781f1f6300000000781f1f630000000000000000000000000000000000000000a4810100"/64, 0x40, 0x2580}, {&(0x7f0000010840)="0100"/32, 0x20, 0x2800}, {&(0x7f0000010860)="0000000000000000000000000000000000000000000000000100000000000000781f1f63000000000c000000000000000200000000000000050000000000000004000000000000000000000000000000781f1f6300000000781f1f63000000000000000000000000000000000000000000800100000000000000000000000000020000000000000003000000000000000400000000000000050000000000000000000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000200000000000000", 0xe0, 0x28c0}, {&(0x7f0000010940)="0200000000000000000000000000000000000000000000000300000000000000", 0x20, 0x2a40}, {&(0x7f0000010960)="0200000000000000000000000000000000000000000000000400000000000000", 0x20, 0x2b00}, {&(0x7f0000010980)="3d0000000000000002000000000000003e000000000000000000000000000000781f1f63000000000c0000000300000000000000000000000000000003000000", 0x40, 0x2c00}, {&(0x7f00000109c0)="f81f0000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000ff00"/1056, 0x420, 0x3000}, {&(0x7f0000000ac0)="05000000000000000100000000000000ffffffffffffffff000000000000000006000000000000000100000000000000fffffffffffbffff000000000000000007000000000000000100000000000000ffffffffffffffff00000000000009000000000000000000010000000000003371f225fab0620b98706919e1da00ffffffffffffffff000000000000000009000000000000000100000000000000ffffffffffffffff00000000000000000a000000000000000100000000000000ffffffffffffffff00000000000000000b000000000000000100000000000000ffffffffffffffff0000000000000000", 0xee, 0x3820}, {&(0x7f0000010ec0)="d102c1e890010000781f1f630000000003000000000000000000000000000000781f1f6300000000781f1f630000000000000000000000000000000000000000008001000000000000000000000000000c000000000000000d000000000000000e000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000781f1f6300000000781f1f630000000000000000000000000000000000000000008001000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000781f1f6300000000781f1f630000000000000000000000000000000000000000008001000000000000000000000000000700"/352, 0x160, 0x3c00}, {&(0x7f0000011020)="652d8fe95cab1d6a11faaf1e400001000100000000000000781f1f630000000020000000000000001000000006000000c00100000000000002000000000000000c0000000000000002000000000000000100000001000000001000000000000000000000000000000200000000000000020000822fc9e631758aeff4441440d7044700000000000100000001000000120000000000000000000000000000000d000000000000000200000000000000020000000200000000140000000000000000000000000000011400000000000001000000000000000e0000000000000002000000000000000100000001000000001800000000000000000000000000000f0000000000000002000000000000000100000001000000001c000000000000000000000000000010000000000000000200000000000000090000000900000008000000000000000000000000000000090000000000000001000000000000000a0000000000000002000000000000000b0000000000000003000000000000000c0000000000000004000000000000000d0000000000000005000000000000000e0000000000000006000000000000001000000000000000070000000000000011", 0x1c0, 0x4000}, {&(0x7f0000001200)="0c00000000000000100001022e0000000200000000000000100002022e2e00000d000000000000001800050166696c6530000000000016000e00000000000000c803050766696c653100"/96, 0x60, 0x4400}, {&(0x7f0000000e40)="0200000000000000100001022e0000000200000000000000100002022e2e00000b00040000000000180006012e6e696c66730000000000000c000000000000001800050266696c6530000000000000000f000000000000001800050166696c65310000000000000010000000000000001800050166696c65320000000000000010000000000000001800050166696c65330000000000000011000000000000006803090166696c652e636f6c64000000000000000000000000000000000000005d93d9db5530385f0783baa04c1f12e30fd570c45fdcc74dd80bee7b9763226b11a6188ab159c9e4798a7e611fb624e9ba470700c4dfd63d5fe2ceff679c8ca5d83d492d7f03c4d0ce83f574f55c402cb2791e7df02ca234f511813cd8af73dae62c22997171926b8bafd7013d77c8aaaaa63fbd385bd13eea3c5558bed24494b99ed957d721d50f6212d6cb487766dded0b732accafb1f82f98b36976e717260996b286e570d4306d100b76e6b6a3517f8bb3190e879582590730adec6106968058b9e2c503d92b", 0x188, 0x4800}, {&(0x7f0000011300)='syzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkal\x00\x00\x00\x00\x00\x00', 0x420, 0x4c00}, {&(0x7f0000011780)="16aae7c8b63c7c0811faaf1e400000000200000000000000781f1f630000000030000000000000001000000006000000880100000000000002000000000000001000000000000000020000000000000001000000000000000f00000000000000110000000000000002000000000000000100000001000000000400000000000000000000000000000600000000000000020000000000000005000000050000001300000000000000000000000000000014000000000000000100000000000000150000000000000002000000000000001600000000000000030000000000000001180000000000000400000000000000040000000000000000000000000000000100000001000000170000000000000000000000000000000500000000000000000000000000000001000000010000001800000000000000000000000000000003000000000000000000000000000000060000000600000000000000000000000100000000000000020000000000000022000000000000008200000000000000a200"/416, 0x1a0, 0x8000}, {&(0x7f0000011980)="0000000000000000080000000000000009000000000000000a000000000000000b000000000000000c000000000000000d000000000000000e0000000000000010000000000000001100"/96, 0x60, 0x8600}, {&(0x7f0000011a60)="ee1f0000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000ffff0300"/1056, 0x420, 0x8c00}, {&(0x7f0000011e80)="00000000000000000000000000000000781f1f6300000000781f1f63000000000000000000000000000000000000000000800100"/64, 0x40, 0x9480}, {&(0x7f0000011ec0)="01000000000000000004000000000000781f1f6300000000781f1f630000000092ddcb2992ddcb290000000000000000ed4103000000000000000000000000001200"/96, 0x60, 0x9500}, {&(0x7f0000001bc0)="00000000000000000000000000000000781f1f6300000000781f1f63000000000000000000000000000000000000000000800100000000000000000000000000bb755ccb35db3f23d2f959c640b3f7e4f89b3e98084087c7d84e05187ba1a4c70bd1d2fa45df73086e0bcab9b39569f71f45460370d5931d172ea6be44eb1b3c", 0x80, 0x9800}, {&(0x7f0000001000)="00000000000000000000000000000000781f1f63000000007851d90000000000008001000000000000000000000000000eb4e95c2a11348f199606f92f622ff79c77471b9eda918b4741aae7087ed6f3627f32e670fa3869a0a1c4186ca188f8b07df844e618c65793a8bf5df733ca8bd529fe78adc1f327a5b560f60838", 0x7e, 0x9882}, {&(0x7f0000000080)="00000000000000000000000000000000781f1f6300000000781f1f63000000000000000000000000000000000000000000800100"/64, 0x40, 0x9900}, {&(0x7f0000012060)="02000000000000000004000000000000781f1f6300000000781f1f630000000092ddcb2992ddcb290000000000000000ed410200000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000080bd9f690000000004000000000000001a04000000000000781f1f6300000000781f1f630000000092ddcb2992ddcb290000000000000000ed810100000000000000000000000000001400000000000001140000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000081bd9f690000000002000000000000002700000000000000781f1f6300000000781f1f630000000092ddcb2992ddcb290000000000000000eda10100000000000000000000000000001800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000082bd9f690000000002000000000000000a00000000000000781f1f6300000000781f1f630000000092ddcb2992ddcb290000000000000000ed810100000000000000000000000000001c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000083bd9f690000000014000000000000002823000000000000781f1f6300000000781f1f630000000092ddcb2992ddcb290000000000000000ed810200000000000102010000000000000000000000000009000000000000000a000000000000000f000000000000000c000000000000000d00000000000000000000000000000084bd9f690000000002000000000000006400000000000000781f1f6300000000781f1f630000000092ddcb2992ddcb290000000000000000ed810100000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000085bd9f6900000000", 0x300, 0x9a00}, {&(0x7f0000012360)="0200"/32, 0x20, 0xa000}, {&(0x7f0000012380)="0000000000000000000000000000000000000000000000000100000000000000781f1f63000000000c000000000000000200000000000000050000000000000004000000000000000000000000000000781f1f6300000000781f1f63000000000000000000000000000000000000000000800100000000000000000000000000020000000000000003000000000000000400000000000000050000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000200000000000000781f1f630000000035000000000000000800000000000000160000000000000006000000000000000000000000000000781f1f6300000000781f1f63000000000000000000000000000000000000000000800100000000000000000000000000130000000000000014000000000000001500000000000000160000000000000001180000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000300000000000000", 0x1a0, 0xa0c0}, {&(0x7f0000012520)="0200000000000000000000000000000000000000000000000400000000000000", 0x20, 0xa300}, {&(0x7f0000012540)="3a00000000000000050000000000000004000000000000000000000000000000781f1f63000000000c00000003000000781f1f63000000001000000003000000781f1f63000000001000000002000000781f1f630000000005000000020000000000000000000000000000000200"/128, 0x80, 0xa400}, {&(0x7f00000125c0)="e01f0000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000ffffff0100"/1056, 0x420, 0xa800}, {&(0x7f0000000140)="0100"/32, 0x20, 0xac80}, {&(0x7f0000001140)="0100000000000000000000000000000000000000000000000000000000000000b4f3d68506ba7e98d0ac8900caa2e98e70c40eb8e93c774e727485df6e726b0357c05f0c54ec526304fcc89b006d6f9df3720b868dcb6145a808b75c5461305d07c26be302cbc77b62684f08c02e34035d7d5dc8388600"/128, 0x80, 0xae00}, {&(0x7f0000000d00)="0300000000000000000000000000000000000000c4000000000000000000000011bb9ea46b3fcfd6d68cdf88a1846fb9459fcf5dc67eb9b3e1f2bc1bf6df6fc077cfa74a4bf5ac7eefd5af8f21683e816b94c9db0e31b02dd728f30fed88e56ccdf1013f21ee67403ef470db76a0326a842f625a1f4ef6ff1d25316c6786dc1d", 0x80, 0xae80}, {&(0x7f0000012a40)="0300000000000000000000000000000000000000000000000000000000000400", 0x20, 0xaf00}, {&(0x7f0000000180)="0100"/32, 0x20, 0xaf80}, {&(0x7f0000012a80)="050000000000000001000000000000000200000000000000000000000000000006000000000000000100000000000000020000000000000000000000000000000700000000000000010000000000000002000000000000000000000000000000080000000000000001000000000000000200000000000000000000000000000009000000000000000100000000000000020000000000000000000000000000000a000000000000000100000000000000010000000000000000000000000000000b0000000000000001000000000000000100000000000000000000000000000017000000000000000200000000000000ffffffffffffffff000000000000000018000000000000000200000000000000ffffffffffffffff000000000000000019000000000000000200000000000000ffffffffffffffff00000000000000001a000000000000000200000000000000ffffffffffffffff00000000000000001b000000000000000200000000000000ffffffffffffffff00000000000000001c000000000000000200000000000000ffffffffffffffff00000000000000001d000000000000000200000000000000ffffffffffffffff000000000000000021000000000000000200000000000000ffffffffffffffff00000000000000001e000000000000000200000000000000ffffffffffffffff00000000000000001f000000000000000200000000000000ffffffffffffffff000000000000000012000000000000000200000000000000ffffffffffffffff000000000000000023000000000000000200000000000000ffffffffffffffff000000000000000024000000000000000200000000000000ffffffffffffffff000000000000000025000000000000000200000000000000ffffffffffffffff000000000000000026000000000000000200000000000000ffffffffffffffff000000000000000028000000000000000200000000000000ffffffffffffffff000000000000000029000000000000000200000000000000ffffffffffffffff0000000000000000", 0x300, 0xb020}, {&(0x7f0000001100)="22000000000000000200000000000000ffffffffffffffff0000000000000000", 0x20, 0xb400}, {&(0x7f0000012dc0)="13000000000000000200000000000000ffffffffffffffff000000000000000014000000000000000200000000000000ffffffffffffffff0000000000000000", 0x40, 0xbbfd}, {&(0x7f0000001080)="5a83286cef02cd2211faaf1e400006000300000000000000781f1f63000000004000000000000000050000000100000078000000000000000200000000000000030000000000000000000000000000000300000002000000c200000000000000e20000000000000000000000000000000100"/128, 0x80, 0xc000}, {&(0x7f0000012e80)="15000000000000000200000000000000ffffffffffffffff000000000000000027000000000000000200000000000000ffffffffffffffff0000000000000000", 0x40, 0xc400}, {&(0x7f0000012ec0)="16000000000000000200000000000000ffffffffffffffff0000000000000000", 0x20, 0xc800}, {&(0x7f0000012ee0)="0001080000000000000000000000000000000000000000000100000000000000020000000000000022000000000000008200000000000000a200000000000000c200000000000000e200"/96, 0x60, 0xcc00}, {&(0x7f0000012f40)='\x00\x00\x00\x00\x00\x00\x00\x00*\x00\x00\x00\x00\x00\x00\x00+\x00\x00\x00\x00\x00\x00\x00,\x00\x00\x00\x00\x00\x00\x00-\x00\x00\x00\x00\x00\x00\x00.\x00\x00\x00\x00\x00\x00\x00/\x00\x00\x00\x00\x00\x00\x001\x00\x00\x00\x00\x00\x00\x002\x00'/96, 0x60, 0xce00}, {&(0x7f0000012fa0)="ed336a1f90010000781f1f63000000000f000000000000000000000000000000781f1f6300000000781f1f6300000000000000000000000000000000000000000080010000000000010201000000000000000000000000000d000000000000000e000000000000003300000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000781f1f6300000000781f1f630000000000000000000000000000000000000000008001000000000000000000000000001700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000781f1f6300000000781f1f630000000000000000000000000000000000000000008001000000000000000000000000001800"/352, 0x160, 0xd000}, {&(0x7f0000000040)='syzkallers\x00'/32, 0x20, 0xf4a0}, {&(0x7f0000011920)="000109000000000000000000000000000000000000000000010000ecffffff000200000000000000030000000000000004000000000000000500000000000000060000000000000007000000004000000800"/96, 0x60, 0x18400}, {&(0x7f00000007c0)="020000000000343418010000f498e168cdbf9e50000000003f00000000000000000010000000000004000000000000001000000005000000020000000000000030000000000000000300000000000000a003000000000000781f1f6300000000781f1f6300000000781f1f63000000000100320001000100781f1f6300000000004eed0000000000000000000b00000080002000c00010005745cea941714c61b9841bd4a64c433600"/192, 0xc0, 0xff000}], 0x0, &(0x7f0000001840)=ANY=[@ANYBLOB="001f4c0e96634721fa0641d80ae80934dd515774df6bd6e8ac83bb453caa956ceb4e72e49239bc83dd9c189e0f6332ce6042e5e5e84340678e533d81a4cb03a0ff84205a9dc6b04afdd36916c4937ffd20701a2227317c118ba2ef40cb0aaf4c2a3c9c7ad66dcc643e090000001f10b0fee5fb6016d5ad90f6a06b6df6880e34e1378a94af2a8fc7e0651a99ddb26db13fb8b8b63bf0e1ead9f07e9b56808ebf95684a2efab363308ad65e95e1fb6bd7bae280631961c3138da9b14ba50d3463a0a3c785d0363634fbe20b1677d20b2e67e71ec49457cb86151c31f6afe2abcc4067ded509001dec1e5bf678e5e55d19495f9894e5d0d7dc592e6689568b82cf3c826abab6b9193c1b7ed2288f2a9e9b7b86d0e10e8a12d9d1fa9d66913f7c23541c6eef4233ccaeb4d125685b9b7892810d4a50ac7bd623f5c732a01f696ba259612e2d1e5e4b15c078f0604195a7ff786b9154f0a89fb66df6d73760de85cf07776a83608875e7558373d5f30000000000000058198bb377da9ec83cbc10c0c8f5da5d441a7b75171eced6eb8a3015aed8b7453c5a508f8178c340af33f4d0ff0355a15c4cd11237e272eaa73e2cdbc9830a39c6d1f64b7794ffb4a2edf27cb075e48317f7066e2bf6214d56dcd60c9f86133efc598f5f5b8208e8cae13bb09855f52bda911845b5788cc006863699ad01c2513636b05d1695e5f0082b379dba535ef60dfa85861b39f8da826b40d19a24f8d000004b964046fefe094bd7867756e36349576f1d9e16ff5f867ad512cbd1de6db400000000000076521fcf5ce8566e87cd3c95167353e600941d9a40769d280ec46b525d83b3ac10341f55dd60ef5c216373afd347137a51e48f4d3a06afc1f3799c2d75e6e9d7c6de33127351542662555a59b0100ea8710222dd9749a63b902dc55ccaf3e7cd416ffadf65bb211d8d75ff9108adebd18bd6ba74136fec4795731842025cd65425c52eba2759d901b1c6023ea5bb6f70d4d3770e23ba08efc22a15a55ba4d32c3361fad480cd13a47e94394aa9cedc5e863b80ece95af6e7975f638b5e8c0955e5f8fe012461b0f8ac11db05a3e2dc1e5ce91df2a6f66bbdc26886ba152ec3e1ed5b7738426fba0617a38e93359c67428f3f78392231b2b551f59f62cf44"], 0xff) truncate(&(0x7f0000000a80)='./file2\x00', 0x2) r0 = openat$proc_capi20ncci(0xffffffffffffff9c, &(0x7f0000000000), 0x400, 0x0) sendmsg$IPCTNL_MSG_TIMEOUT_DEFAULT_GET(r0, &(0x7f0000000900)={&(0x7f00000001c0)={0x10, 0x0, 0x0, 0x40000000}, 0xc, &(0x7f0000000780)={&(0x7f0000000740)={0x24, 0x4, 0x8, 0x801, 0x0, 0x0, {0x7, 0x0, 0x7}, [@CTA_TIMEOUT_L3PROTO={0x6, 0x2, 0x1, 0x0, 0x18ee}, @CTA_TIMEOUT_L4PROTO={0x5, 0x3, 0x2f}]}, 0x24}}, 0x48191) syz_mount_image$nilfs2(&(0x7f00000000c0), &(0x7f0000000100)='./file0\x00', 0x100000, 0x38, &(0x7f0000000200)=[{&(0x7f0000000880)='\x00', 0x1}, {&(0x7f00000008c0)="1100fbbadd", 0x5, 0x1}, {&(0x7f00000106a0)="010000", 0x3, 0x6}, {&(0x7f0000011720)='/tmp/syz-imagegen3787079791/file0/file0\x00'/64, 0x40, 0x9}, {&(0x7f00000009c0)="020000000000343418010000f498e16897043d98000000003f00000000000000000010000000000004000000000000001000000005000000010000000000000004000000000000000000000000000000e003000000000000781f1f6300000000781f1f6300000000781f1f63000000000100320000000100781f1f6300000000004eed0000000000000000000b00000080002000c00010005745cea941714c61b9841bd4a64c433600"/192, 0xc0, 0x400}, {&(0x7f0000010200)="0200000000000000100001022e0000000200000000000000100002022e2e00000b00000000000000e00306012e6e696c667300"/64, 0x40, 0x1400}, {&(0x7f00000012c0)="f41f000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200098ab8dc400002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000713568942e28999cae2000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000ccff0d2100002000000020000000200000ff0f000000000000000000000000000000000000000000000000000000000000b857bfc0ef7c59073fbea67e3a8b1a4b0e430b1b02d43cddefd3a5e5186c9daad83a4700674b15bc4fd900681f19f6b32e1cb067bd5cd019ee952c231902517f50489e52e1710e00d1bd2aa0631b9d9c073fc0d80be08660ac88627af182fc37da295d455c3ac006650b055f52da71a4782997e92da0a93e82924b281030b3af07eefafb2feb22996b53e044c3f4adc1674d8bbaed211fb0afffaa6383651cfc67979d380bd965c1e119469af2ec455803fef7bc5484341c9b986c58e13c1d5fac5756a49ca168a0035e25f7034751deef40832ef538c98b956c130f1eb4b057556a9e6278094ee44c48ab5193a90ec86cb901cce267e5f3d44c37fef409ab70cc6729e102bebd84fc3cc7963d46a087e06213f426b93b9f210eee3d23d30a75fd58cdcd8ad74867589c32e75119efbde9d54a661c4be42c", 0x561, 0x17ff}, {&(0x7f0000010660)="00000000000000000000000000000000781f1f6300000000781f1f63000000000000000000000000000000000000000000800100"/64, 0x40, 0x2080}, {&(0x7f0000010700)="00000000000000000000000000000000781f1f6300000000781f1f63000000000000000000000000000000000000000000800100"/64, 0x40, 0x2380}, {&(0x7f0000000980)="00000000000000000000000000000000781f1f6300000000781f1f63000000000000000000000000000000000000000000800100"/64, 0x40, 0x2400}, {&(0x7f0000010780)="00000000000000000000000000000000781f1f6300000000781f1f63000000000000000000000000000000000000000000800100"/64, 0x40, 0x2480}, {&(0x7f0000001c40)="00000000000000000000000000000000781f1f6300000000781f1f6300000000000000000000000000000000000000000080010000000000000000000000005b0d71bedc67bfe2aa78246cc880fa60173b9b92105c36da53fafb922ad6e2ed0b79d6f232aed1ab2373296e31685439b91de925fb8c9a8aeefb9e454543004509", 0x80, 0x2500}, {&(0x7f0000010800)="00000000000000000000000000000000781f1f6300000000781f1f630000000000000000000000000000000000000000a4810100"/64, 0x40, 0x2580}, {&(0x7f0000010840)="0100"/32, 0x20, 0x2800}, {&(0x7f0000010860)="0000000000000000000000000000000000000000000000000100000000000000781f1f63000000000c000000000000000200000000000000050000000000000004000000000000000000000000000000781f1f6300000000781f1f63000000000000000000000000000000000000000000800100000000000000000000000000020000000000000003000000000000000400000000000000050000000000000000000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000200000000000000", 0xe0, 0x28c0}, {&(0x7f0000010940)="0200000000000000000000000000000000000000000000000300000000000000", 0x20, 0x2a40}, {&(0x7f0000010960)="0200000000000000000000000000000000000000000000000400000000000000", 0x20, 0x2b00}, {&(0x7f0000010980)="3d0000000000000002000000000000003e000000000000000000000000000000781f1f63000000000c0000000300000000000000000000000000000003000000", 0x40, 0x2c00}, {&(0x7f00000109c0)="f81f0000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000ff00"/1056, 0x420, 0x3000}, {&(0x7f0000000ac0)="05000000000000000100000000000000ffffffffffffffff000000000000000006000000000000000100000000000000fffffffffffbffff000000000000000007000000000000000100000000000000ffffffffffffffff00000000000009000000000000000000010000000000003371f225fab0620b98706919e1da00ffffffffffffffff000000000000000009000000000000000100000000000000ffffffffffffffff00000000000000000a000000000000000100000000000000ffffffffffffffff00000000000000000b000000000000000100000000000000ffffffffffffffff0000000000000000", 0xee, 0x3820}, {&(0x7f0000010ec0)="d102c1e890010000781f1f630000000003000000000000000000000000000000781f1f6300000000781f1f630000000000000000000000000000000000000000008001000000000000000000000000000c000000000000000d000000000000000e000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000781f1f6300000000781f1f630000000000000000000000000000000000000000008001000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000781f1f6300000000781f1f630000000000000000000000000000000000000000008001000000000000000000000000000700"/352, 0x160, 0x3c00}, {&(0x7f0000011020)="652d8fe95cab1d6a11faaf1e400001000100000000000000781f1f630000000020000000000000001000000006000000c00100000000000002000000000000000c0000000000000002000000000000000100000001000000001000000000000000000000000000000200000000000000020000822fc9e631758aeff4441440d7044700000000000100000001000000120000000000000000000000000000000d000000000000000200000000000000020000000200000000140000000000000000000000000000011400000000000001000000000000000e0000000000000002000000000000000100000001000000001800000000000000000000000000000f0000000000000002000000000000000100000001000000001c000000000000000000000000000010000000000000000200000000000000090000000900000008000000000000000000000000000000090000000000000001000000000000000a0000000000000002000000000000000b0000000000000003000000000000000c0000000000000004000000000000000d0000000000000005000000000000000e0000000000000006000000000000001000000000000000070000000000000011", 0x1c0, 0x4000}, {&(0x7f0000001200)="0c00000000000000100001022e0000000200000000000000100002022e2e00000d000000000000001800050166696c6530000000000016000e00000000000000c803050766696c653100"/96, 0x60, 0x4400}, {&(0x7f0000000e40)="0200000000000000100001022e0000000200000000000000100002022e2e00000b00040000000000180006012e6e696c66730000000000000c000000000000001800050266696c6530000000000000000f000000000000001800050166696c65310000000000000010000000000000001800050166696c65320000000000000010000000000000001800050166696c65330000000000000011000000000000006803090166696c652e636f6c64000000000000000000000000000000000000005d93d9db5530385f0783baa04c1f12e30fd570c45fdcc74dd80bee7b9763226b11a6188ab159c9e4798a7e611fb624e9ba470700c4dfd63d5fe2ceff679c8ca5d83d492d7f03c4d0ce83f574f55c402cb2791e7df02ca234f511813cd8af73dae62c22997171926b8bafd7013d77c8aaaaa63fbd385bd13eea3c5558bed24494b99ed957d721d50f6212d6cb487766dded0b732accafb1f82f98b36976e717260996b286e570d4306d100b76e6b6a3517f8bb3190e879582590730adec6106968058b9e2c503d92b", 0x188, 0x4800}, {&(0x7f0000011300)='syzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkal\x00\x00\x00\x00\x00\x00', 0x420, 0x4c00}, {&(0x7f0000011780)="16aae7c8b63c7c0811faaf1e400000000200000000000000781f1f630000000030000000000000001000000006000000880100000000000002000000000000001000000000000000020000000000000001000000000000000f00000000000000110000000000000002000000000000000100000001000000000400000000000000000000000000000600000000000000020000000000000005000000050000001300000000000000000000000000000014000000000000000100000000000000150000000000000002000000000000001600000000000000030000000000000001180000000000000400000000000000040000000000000000000000000000000100000001000000170000000000000000000000000000000500000000000000000000000000000001000000010000001800000000000000000000000000000003000000000000000000000000000000060000000600000000000000000000000100000000000000020000000000000022000000000000008200000000000000a200"/416, 0x1a0, 0x8000}, {&(0x7f0000011980)="0000000000000000080000000000000009000000000000000a000000000000000b000000000000000c000000000000000d000000000000000e0000000000000010000000000000001100"/96, 0x60, 0x8600}, {&(0x7f0000011a60)="ee1f0000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000ffff0300"/1056, 0x420, 0x8c00}, {&(0x7f0000011e80)="00000000000000000000000000000000781f1f6300000000781f1f63000000000000000000000000000000000000000000800100"/64, 0x40, 0x9480}, {&(0x7f0000011ec0)="01000000000000000004000000000000781f1f6300000000781f1f630000000092ddcb2992ddcb290000000000000000ed4103000000000000000000000000001200"/96, 0x60, 0x9500}, {&(0x7f0000001bc0)="00000000000000000000000000000000781f1f6300000000781f1f63000000000000000000000000000000000000000000800100000000000000000000000000bb755ccb35db3f23d2f959c640b3f7e4f89b3e98084087c7d84e05187ba1a4c70bd1d2fa45df73086e0bcab9b39569f71f45460370d5931d172ea6be44eb1b3c", 0x80, 0x9800}, {&(0x7f0000001000)="00000000000000000000000000000000781f1f63000000007851d90000000000008001000000000000000000000000000eb4e95c2a11348f199606f92f622ff79c77471b9eda918b4741aae7087ed6f3627f32e670fa3869a0a1c4186ca188f8b07df844e618c65793a8bf5df733ca8bd529fe78adc1f327a5b560f60838", 0x7e, 0x9882}, {&(0x7f0000000080)="00000000000000000000000000000000781f1f6300000000781f1f63000000000000000000000000000000000000000000800100"/64, 0x40, 0x9900}, {&(0x7f0000012060)="02000000000000000004000000000000781f1f6300000000781f1f630000000092ddcb2992ddcb290000000000000000ed410200000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000080bd9f690000000004000000000000001a04000000000000781f1f6300000000781f1f630000000092ddcb2992ddcb290000000000000000ed810100000000000000000000000000001400000000000001140000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000081bd9f690000000002000000000000002700000000000000781f1f6300000000781f1f630000000092ddcb2992ddcb290000000000000000eda10100000000000000000000000000001800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000082bd9f690000000002000000000000000a00000000000000781f1f6300000000781f1f630000000092ddcb2992ddcb290000000000000000ed810100000000000000000000000000001c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000083bd9f690000000014000000000000002823000000000000781f1f6300000000781f1f630000000092ddcb2992ddcb290000000000000000ed810200000000000102010000000000000000000000000009000000000000000a000000000000000f000000000000000c000000000000000d00000000000000000000000000000084bd9f690000000002000000000000006400000000000000781f1f6300000000781f1f630000000092ddcb2992ddcb290000000000000000ed810100000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000085bd9f6900000000", 0x300, 0x9a00}, {&(0x7f0000012360)="0200"/32, 0x20, 0xa000}, {&(0x7f0000012380)="0000000000000000000000000000000000000000000000000100000000000000781f1f63000000000c000000000000000200000000000000050000000000000004000000000000000000000000000000781f1f6300000000781f1f63000000000000000000000000000000000000000000800100000000000000000000000000020000000000000003000000000000000400000000000000050000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000200000000000000781f1f630000000035000000000000000800000000000000160000000000000006000000000000000000000000000000781f1f6300000000781f1f63000000000000000000000000000000000000000000800100000000000000000000000000130000000000000014000000000000001500000000000000160000000000000001180000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000300000000000000", 0x1a0, 0xa0c0}, {&(0x7f0000012520)="0200000000000000000000000000000000000000000000000400000000000000", 0x20, 0xa300}, {&(0x7f0000012540)="3a00000000000000050000000000000004000000000000000000000000000000781f1f63000000000c00000003000000781f1f63000000001000000003000000781f1f63000000001000000002000000781f1f630000000005000000020000000000000000000000000000000200"/128, 0x80, 0xa400}, {&(0x7f00000125c0)="e01f0000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000ffffff0100"/1056, 0x420, 0xa800}, {&(0x7f0000000140)="0100"/32, 0x20, 0xac80}, {&(0x7f0000001140)="0100000000000000000000000000000000000000000000000000000000000000b4f3d68506ba7e98d0ac8900caa2e98e70c40eb8e93c774e727485df6e726b0357c05f0c54ec526304fcc89b006d6f9df3720b868dcb6145a808b75c5461305d07c26be302cbc77b62684f08c02e34035d7d5dc8388600"/128, 0x80, 0xae00}, {&(0x7f0000000d00)="0300000000000000000000000000000000000000c4000000000000000000000011bb9ea46b3fcfd6d68cdf88a1846fb9459fcf5dc67eb9b3e1f2bc1bf6df6fc077cfa74a4bf5ac7eefd5af8f21683e816b94c9db0e31b02dd728f30fed88e56ccdf1013f21ee67403ef470db76a0326a842f625a1f4ef6ff1d25316c6786dc1d", 0x80, 0xae80}, {&(0x7f0000012a40)="0300000000000000000000000000000000000000000000000000000000000400", 0x20, 0xaf00}, {&(0x7f0000000180)="0100"/32, 0x20, 0xaf80}, {&(0x7f0000012a80)="050000000000000001000000000000000200000000000000000000000000000006000000000000000100000000000000020000000000000000000000000000000700000000000000010000000000000002000000000000000000000000000000080000000000000001000000000000000200000000000000000000000000000009000000000000000100000000000000020000000000000000000000000000000a000000000000000100000000000000010000000000000000000000000000000b0000000000000001000000000000000100000000000000000000000000000017000000000000000200000000000000ffffffffffffffff000000000000000018000000000000000200000000000000ffffffffffffffff000000000000000019000000000000000200000000000000ffffffffffffffff00000000000000001a000000000000000200000000000000ffffffffffffffff00000000000000001b000000000000000200000000000000ffffffffffffffff00000000000000001c000000000000000200000000000000ffffffffffffffff00000000000000001d000000000000000200000000000000ffffffffffffffff000000000000000021000000000000000200000000000000ffffffffffffffff00000000000000001e000000000000000200000000000000ffffffffffffffff00000000000000001f000000000000000200000000000000ffffffffffffffff000000000000000012000000000000000200000000000000ffffffffffffffff000000000000000023000000000000000200000000000000ffffffffffffffff000000000000000024000000000000000200000000000000ffffffffffffffff000000000000000025000000000000000200000000000000ffffffffffffffff000000000000000026000000000000000200000000000000ffffffffffffffff000000000000000028000000000000000200000000000000ffffffffffffffff000000000000000029000000000000000200000000000000ffffffffffffffff0000000000000000", 0x300, 0xb020}, {&(0x7f0000001100)="22000000000000000200000000000000ffffffffffffffff0000000000000000", 0x20, 0xb400}, {&(0x7f0000012dc0)="13000000000000000200000000000000ffffffffffffffff000000000000000014000000000000000200000000000000ffffffffffffffff0000000000000000", 0x40, 0xbbfd}, {&(0x7f0000001080)="5a83286cef02cd2211faaf1e400006000300000000000000781f1f63000000004000000000000000050000000100000078000000000000000200000000000000030000000000000000000000000000000300000002000000c200000000000000e20000000000000000000000000000000100"/128, 0x80, 0xc000}, {&(0x7f0000012e80)="15000000000000000200000000000000ffffffffffffffff000000000000000027000000000000000200000000000000ffffffffffffffff0000000000000000", 0x40, 0xc400}, {&(0x7f0000012ec0)="16000000000000000200000000000000ffffffffffffffff0000000000000000", 0x20, 0xc800}, {&(0x7f0000012ee0)="0001080000000000000000000000000000000000000000000100000000000000020000000000000022000000000000008200000000000000a200000000000000c200000000000000e200"/96, 0x60, 0xcc00}, {&(0x7f0000012f40)='\x00\x00\x00\x00\x00\x00\x00\x00*\x00\x00\x00\x00\x00\x00\x00+\x00\x00\x00\x00\x00\x00\x00,\x00\x00\x00\x00\x00\x00\x00-\x00\x00\x00\x00\x00\x00\x00.\x00\x00\x00\x00\x00\x00\x00/\x00\x00\x00\x00\x00\x00\x001\x00\x00\x00\x00\x00\x00\x002\x00'/96, 0x60, 0xce00}, {&(0x7f0000012fa0)="ed336a1f90010000781f1f63000000000f000000000000000000000000000000781f1f6300000000781f1f6300000000000000000000000000000000000000000080010000000000010201000000000000000000000000000d000000000000000e000000000000003300000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000781f1f6300000000781f1f630000000000000000000000000000000000000000008001000000000000000000000000001700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000781f1f6300000000781f1f630000000000000000000000000000000000000000008001000000000000000000000000001800"/352, 0x160, 0xd000}, {&(0x7f0000000040)='syzkallers\x00'/32, 0x20, 0xf4a0}, {&(0x7f0000011920)="000109000000000000000000000000000000000000000000010000ecffffff000200000000000000030000000000000004000000000000000500000000000000060000000000000007000000004000000800"/96, 0x60, 0x18400}, {&(0x7f00000007c0)="020000000000343418010000f498e168cdbf9e50000000003f00000000000000000010000000000004000000000000001000000005000000020000000000000030000000000000000300000000000000a003000000000000781f1f6300000000781f1f6300000000781f1f63000000000100320001000100781f1f6300000000004eed0000000000000000000b00000080002000c00010005745cea941714c61b9841bd4a64c433600"/192, 0xc0, 0xff000}], 0x0, &(0x7f0000001840)=ANY=[@ANYBLOB="001f4c0e96634721fa0641d80ae80934dd515774df6bd6e8ac83bb453caa956ceb4e72e49239bc83dd9c189e0f6332ce6042e5e5e84340678e533d81a4cb03a0ff84205a9dc6b04afdd36916c4937ffd20701a2227317c118ba2ef40cb0aaf4c2a3c9c7ad66dcc643e090000001f10b0fee5fb6016d5ad90f6a06b6df6880e34e1378a94af2a8fc7e0651a99ddb26db13fb8b8b63bf0e1ead9f07e9b56808ebf95684a2efab363308ad65e95e1fb6bd7bae280631961c3138da9b14ba50d3463a0a3c785d0363634fbe20b1677d20b2e67e71ec49457cb86151c31f6afe2abcc4067ded509001dec1e5bf678e5e55d19495f9894e5d0d7dc592e6689568b82cf3c826abab6b9193c1b7ed2288f2a9e9b7b86d0e10e8a12d9d1fa9d66913f7c23541c6eef4233ccaeb4d125685b9b7892810d4a50ac7bd623f5c732a01f696ba259612e2d1e5e4b15c078f0604195a7ff786b9154f0a89fb66df6d73760de85cf07776a83608875e7558373d5f30000000000000058198bb377da9ec83cbc10c0c8f5da5d441a7b75171eced6eb8a3015aed8b7453c5a508f8178c340af33f4d0ff0355a15c4cd11237e272eaa73e2cdbc9830a39c6d1f64b7794ffb4a2edf27cb075e48317f7066e2bf6214d56dcd60c9f86133efc598f5f5b8208e8cae13bb09855f52bda911845b5788cc006863699ad01c2513636b05d1695e5f0082b379dba535ef60dfa85861b39f8da826b40d19a24f8d000004b964046fefe094bd7867756e36349576f1d9e16ff5f867ad512cbd1de6db400000000000076521fcf5ce8566e87cd3c95167353e600941d9a40769d280ec46b525d83b3ac10341f55dd60ef5c216373afd347137a51e48f4d3a06afc1f3799c2d75e6e9d7c6de33127351542662555a59b0100ea8710222dd9749a63b902dc55ccaf3e7cd416ffadf65bb211d8d75ff9108adebd18bd6ba74136fec4795731842025cd65425c52eba2759d901b1c6023ea5bb6f70d4d3770e23ba08efc22a15a55ba4d32c3361fad480cd13a47e94394aa9cedc5e863b80ece95af6e7975f638b5e8c0955e5f8fe012461b0f8ac11db05a3e2dc1e5ce91df2a6f66bbdc26886ba152ec3e1ed5b7738426fba0617a38e93359c67428f3f78392231b2b551f59f62cf44"], 0xff) (async) truncate(&(0x7f0000000a80)='./file2\x00', 0x2) (async) openat$proc_capi20ncci(0xffffffffffffff9c, &(0x7f0000000000), 0x400, 0x0) (async) sendmsg$IPCTNL_MSG_TIMEOUT_DEFAULT_GET(r0, &(0x7f0000000900)={&(0x7f00000001c0)={0x10, 0x0, 0x0, 0x40000000}, 0xc, &(0x7f0000000780)={&(0x7f0000000740)={0x24, 0x4, 0x8, 0x801, 0x0, 0x0, {0x7, 0x0, 0x7}, [@CTA_TIMEOUT_L3PROTO={0x6, 0x2, 0x1, 0x0, 0x18ee}, @CTA_TIMEOUT_L4PROTO={0x5, 0x3, 0x2f}]}, 0x24}}, 0x48191) (async) [ 181.850900][ T7191] loop5: detected capacity change from 0 to 2048 00:03:01 executing program 1: close_range(0xffffffffffffffff, 0xffffffffffffffff, 0x2) prctl$PR_SET_SECCOMP(0x16, 0x2, &(0x7f0000000140)={0x1, &(0x7f0000000180)=[{0x200000000006, 0xfd, 0xfc, 0x7ffc0003}]}) r0 = socket$netlink(0x10, 0x3, 0x0) fremovexattr(r0, 0x0) 00:03:01 executing program 4: r0 = socket$inet_tcp(0x2, 0x1, 0x0) bind$inet(r0, &(0x7f0000000100)={0x2, 0x4e20, @multicast2}, 0x62) setsockopt$inet_tcp_TCP_CONGESTION(r0, 0x6, 0xd, &(0x7f00000000c0)='htcp\x00', 0x5) setsockopt$inet_tcp_int(r0, 0x6, 0x2, 0x0, 0x0) r1 = openat(0xffffffffffffffff, &(0x7f00000002c0)='/proc/self/exe\x00', 0x0, 0x0) r2 = syz_open_procfs(0x0, &(0x7f0000000040)='attr/exec\x00') write$sysctl(r2, 0x0, 0x0) r3 = syz_open_procfs(0x0, &(0x7f0000000040)='attr/exec\x00') write$sysctl(r3, 0x0, 0x0) sendfile(r2, r3, &(0x7f0000000000)=0x6, 0x2) setsockopt$SO_ATTACH_FILTER(r0, 0x1, 0x1a, &(0x7f0000000300)={0x1, &(0x7f00000001c0)=[{0x6, 0x0, 0x0, 0x3654}]}, 0x10) connect$inet(r0, &(0x7f0000000180)={0x2, 0x4e20, @loopback}, 0x10) sendfile(r0, r1, 0x0, 0x101000011) recvmsg(r0, &(0x7f0000000580)={0x0, 0x41, &(0x7f0000000500)=[{&(0x7f0000000740)=""/4084, 0xfffffe1f}], 0x6, 0x0, 0xfffffffffffffcc9}, 0x700) [ 181.857606][ T26] audit: type=1326 audit(181.840:226): auid=4294967295 uid=0 gid=0 ses=4294967295 subj=_ pid=7192 comm="syz-executor.1" exe="/root/syz-executor.1" sig=0 arch=c00000b7 syscall=98 compat=0 ip=0xffff83c5cee4 code=0x7ffc0000 [ 181.866767][ T26] audit: type=1326 audit(181.850:227): auid=4294967295 uid=0 gid=0 ses=4294967295 subj=_ pid=7192 comm="syz-executor.1" exe="/root/syz-executor.1" sig=0 arch=c00000b7 syscall=198 compat=0 ip=0xffff83c5cee4 code=0x7ffc0000 00:03:01 executing program 0: r0 = openat$sndtimer(0xffffffffffffff9c, &(0x7f0000002a80), 0x0) ioctl$SNDRV_TIMER_IOCTL_GINFO(r0, 0xc0f85403, &(0x7f0000000080)={{0x3, 0x0, 0x0, 0x0, 0x5}, 0x0, 0x0, 'id1\x00', 'timer0\x00'}) r1 = openat$damon_kdamond_pid(0xffffffffffffff9c, &(0x7f0000000180), 0x10200, 0x8) ioctl$SNDRV_TIMER_IOCTL_NEXT_DEVICE(r1, 0xc0145401, &(0x7f00000001c0)={0x2, 0x1, 0x6d, 0x3, 0x10000}) openat$sndtimer(0xffffffffffffff9c, &(0x7f0000000200), 0x40) ioctl$SNDRV_TIMER_IOCTL_PARAMS(r0, 0x40505412, &(0x7f0000000000)={0x1, 0x1, 0xfffffe00, 0x0, 0x3}) r2 = syz_open_procfs(0x0, &(0x7f0000000040)='attr/exec\x00') write$sysctl(r2, 0x0, 0x0) ioctl$SNDRV_TIMER_IOCTL_PARAMS(r2, 0x40505412, &(0x7f0000000240)={0x7, 0x35, 0x3f}) [ 181.867046][ T7196] NILFS (loop5): segctord starting. Construction interval = 5 seconds, CP frequency < 30 seconds [ 181.884647][ T26] audit: type=1326 audit(181.850:228): auid=4294967295 uid=0 gid=0 ses=4294967295 subj=_ pid=7192 comm="syz-executor.1" exe="/root/syz-executor.1" sig=0 arch=c00000b7 syscall=98 compat=0 ip=0xffff83c5cee4 code=0x7ffc0000 [ 181.892598][ T7191] NILFS (loop5): bad btree node (ino=16, blocknr=15): level = 0, flags = 0x0, nchildren = 0 [ 181.895343][ T26] audit: type=1326 audit(181.850:229): auid=4294967295 uid=0 gid=0 ses=4294967295 subj=_ pid=7192 comm="syz-executor.1" exe="/root/syz-executor.1" sig=0 arch=c00000b7 syscall=16 compat=0 ip=0xffff83c5cee4 code=0x7ffc0000 [ 181.895442][ T7191] NILFS error (device loop5): nilfs_bmap_lookup_contig: broken bmap (inode number=16) [ 181.900803][ T26] audit: type=1326 audit(181.850:230): auid=4294967295 uid=0 gid=0 ses=4294967295 subj=_ pid=7192 comm="syz-executor.1" exe="/root/syz-executor.1" sig=0 arch=c00000b7 syscall=98 compat=0 ip=0xffff83c5cee4 code=0x7ffc0000 00:03:01 executing program 1: close_range(0xffffffffffffffff, 0xffffffffffffffff, 0x2) (async) prctl$PR_SET_SECCOMP(0x16, 0x2, &(0x7f0000000140)={0x1, &(0x7f0000000180)=[{0x200000000006, 0xfd, 0xfc, 0x7ffc0003}]}) (async) r0 = socket$netlink(0x10, 0x3, 0x0) fremovexattr(r0, 0x0) [ 181.910011][ T7191] Remounting filesystem read-only 00:03:01 executing program 3: r0 = socket$inet_tcp(0x2, 0x1, 0x0) bind$inet(r0, &(0x7f0000000100)={0x2, 0x4e20, @multicast2}, 0x62) setsockopt$inet_tcp_TCP_CONGESTION(r0, 0x6, 0xd, &(0x7f00000000c0)='htcp\x00', 0x5) setsockopt$inet_tcp_int(r0, 0x6, 0x2, &(0x7f0000000080)=0x2803, 0x4) r1 = openat(0xffffffffffffffff, 0x0, 0x0, 0x0) r2 = syz_open_procfs(0x0, &(0x7f0000000040)='attr/exec\x00') write$sysctl(r2, 0x0, 0x0) r3 = syz_open_procfs(0x0, &(0x7f0000000040)='attr/exec\x00') write$sysctl(r3, 0x0, 0x0) sendfile(r2, r3, &(0x7f0000000000)=0x6, 0x2) setsockopt$SO_ATTACH_FILTER(r0, 0x1, 0x1a, &(0x7f0000000300)={0x1, &(0x7f00000001c0)=[{0x6, 0x0, 0x0, 0x3654}]}, 0x10) connect$inet(r0, &(0x7f0000000180)={0x2, 0x4e20, @loopback}, 0x10) sendfile(r0, r1, 0x0, 0x101000011) recvmsg(r0, &(0x7f0000000580)={0x0, 0x41, &(0x7f0000000500)=[{&(0x7f0000000740)=""/4084, 0xfffffe1f}], 0x6, 0x0, 0xfffffffffffffcc9}, 0x700) 00:03:01 executing program 1: close_range(0xffffffffffffffff, 0xffffffffffffffff, 0x2) prctl$PR_SET_SECCOMP(0x16, 0x2, &(0x7f0000000140)={0x1, &(0x7f0000000180)=[{0x200000000006, 0xfd, 0xfc, 0x7ffc0003}]}) (async) r0 = socket$netlink(0x10, 0x3, 0x0) fremovexattr(r0, 0x0) 00:03:01 executing program 0: r0 = openat$sndtimer(0xffffffffffffff9c, &(0x7f0000002a80), 0x0) ioctl$SNDRV_TIMER_IOCTL_GINFO(r0, 0xc0f85403, &(0x7f0000000080)={{0x3, 0x0, 0x0, 0x0, 0x5}, 0x0, 0x0, 'id1\x00', 'timer0\x00'}) r1 = openat$damon_kdamond_pid(0xffffffffffffff9c, &(0x7f0000000180), 0x10200, 0x8) ioctl$SNDRV_TIMER_IOCTL_NEXT_DEVICE(r1, 0xc0145401, &(0x7f00000001c0)={0x2, 0x1, 0x6d, 0x3, 0x10000}) (async) openat$sndtimer(0xffffffffffffff9c, &(0x7f0000000200), 0x40) ioctl$SNDRV_TIMER_IOCTL_PARAMS(r0, 0x40505412, &(0x7f0000000000)={0x1, 0x1, 0xfffffe00, 0x0, 0x3}) (async) r2 = syz_open_procfs(0x0, &(0x7f0000000040)='attr/exec\x00') write$sysctl(r2, 0x0, 0x0) ioctl$SNDRV_TIMER_IOCTL_PARAMS(r2, 0x40505412, &(0x7f0000000240)={0x7, 0x35, 0x3f}) [ 181.918856][ T7191] NILFS (loop5): bad btree node (ino=16, blocknr=15): level = 0, flags = 0x0, nchildren = 0 [ 181.927549][ T26] audit: type=1326 audit(181.900:231): auid=4294967295 uid=0 gid=0 ses=4294967295 subj=_ pid=7197 comm="syz-executor.1" exe="/root/syz-executor.1" sig=0 arch=c00000b7 syscall=98 compat=0 ip=0xffff83c5cee4 code=0x7ffc0000 [ 181.928538][ T7191] NILFS error (device loop5): nilfs_bmap_last_key: broken bmap (inode number=16) 00:03:01 executing program 0: r0 = openat$sndtimer(0xffffffffffffff9c, &(0x7f0000002a80), 0x0) ioctl$SNDRV_TIMER_IOCTL_GINFO(r0, 0xc0f85403, &(0x7f0000000080)={{0x3, 0x0, 0x0, 0x0, 0x5}, 0x0, 0x0, 'id1\x00', 'timer0\x00'}) r1 = openat$damon_kdamond_pid(0xffffffffffffff9c, &(0x7f0000000180), 0x10200, 0x8) ioctl$SNDRV_TIMER_IOCTL_NEXT_DEVICE(r1, 0xc0145401, &(0x7f00000001c0)={0x2, 0x1, 0x6d, 0x3, 0x10000}) (async) openat$sndtimer(0xffffffffffffff9c, &(0x7f0000000200), 0x40) (async) ioctl$SNDRV_TIMER_IOCTL_PARAMS(r0, 0x40505412, &(0x7f0000000000)={0x1, 0x1, 0xfffffe00, 0x0, 0x3}) r2 = syz_open_procfs(0x0, &(0x7f0000000040)='attr/exec\x00') write$sysctl(r2, 0x0, 0x0) (async) ioctl$SNDRV_TIMER_IOCTL_PARAMS(r2, 0x40505412, &(0x7f0000000240)={0x7, 0x35, 0x3f}) 00:03:01 executing program 1: r0 = openat$sndtimer(0xffffffffffffff9c, &(0x7f0000002a80), 0x0) ioctl$SNDRV_TIMER_IOCTL_GINFO(r0, 0xc0f85403, &(0x7f0000000080)={{0x3, 0x0, 0x0, 0x0, 0x5}, 0x0, 0x0, 'id1\x00', 'timer0\x00'}) r1 = openat$damon_kdamond_pid(0xffffffffffffff9c, &(0x7f0000000180), 0x10200, 0x8) ioctl$SNDRV_TIMER_IOCTL_NEXT_DEVICE(r1, 0xc0145401, &(0x7f00000001c0)={0x2, 0x1, 0x6d, 0x3, 0x10000}) openat$sndtimer(0xffffffffffffff9c, &(0x7f0000000200), 0x40) ioctl$SNDRV_TIMER_IOCTL_PARAMS(r0, 0x40505412, &(0x7f0000000000)={0x1, 0x1, 0xfffffe00, 0x0, 0x3}) r2 = syz_open_procfs(0x0, &(0x7f0000000040)='attr/exec\x00') write$sysctl(r2, 0x0, 0x0) ioctl$SNDRV_TIMER_IOCTL_PARAMS(r2, 0x40505412, &(0x7f0000000240)={0x7, 0x35, 0x3f}) [ 181.952534][ T26] audit: type=1326 audit(181.900:232): auid=4294967295 uid=0 gid=0 ses=4294967295 subj=_ pid=7197 comm="syz-executor.1" exe="/root/syz-executor.1" sig=0 arch=c00000b7 syscall=98 compat=0 ip=0xffff83c5cee4 code=0x7ffc0000 [ 181.954568][ T7191] NILFS (loop5): error -5 truncating bmap (ino=16) 00:03:01 executing program 0: r0 = openat$sndtimer(0xffffffffffffff9c, &(0x7f0000002a80), 0x0) ioctl$SNDRV_TIMER_IOCTL_GINFO(r0, 0xc0f85403, &(0x7f0000000080)={{0x3, 0x0, 0x0, 0x0, 0x5}, 0x0, 0x0, 'id1\x00', 'timer0\x00'}) r1 = openat$damon_kdamond_pid(0xffffffffffffff9c, &(0x7f0000000180), 0x10200, 0x8) ioctl$SNDRV_TIMER_IOCTL_NEXT_DEVICE(r1, 0xc0145401, &(0x7f00000001c0)={0x2, 0x1, 0x6d, 0x3, 0x10000}) openat$sndtimer(0xffffffffffffff9c, &(0x7f0000000200), 0x40) ioctl$SNDRV_TIMER_IOCTL_PARAMS(r0, 0x40505412, &(0x7f0000000000)={0x1, 0x1, 0xfffffe00, 0x0, 0x3}) r2 = syz_open_procfs(0x0, &(0x7f0000000040)='attr/exec\x00') write$sysctl(r2, 0x0, 0x0) ioctl$SNDRV_TIMER_IOCTL_PARAMS(r2, 0x40505412, &(0x7f0000000240)={0x7, 0x35, 0x3f}) [ 181.969838][ T26] audit: type=1326 audit(181.910:233): auid=4294967295 uid=0 gid=0 ses=4294967295 subj=_ pid=7205 comm="syz-executor.1" exe="/root/syz-executor.1" sig=0 arch=c00000b7 syscall=98 compat=0 ip=0xffff83c5cee4 code=0x7ffc0000 00:03:01 executing program 1: r0 = openat$sndtimer(0xffffffffffffff9c, &(0x7f0000002a80), 0x0) ioctl$SNDRV_TIMER_IOCTL_GINFO(r0, 0xc0f85403, &(0x7f0000000080)={{0x3, 0x0, 0x0, 0x0, 0x5}, 0x0, 0x0, 'id1\x00', 'timer0\x00'}) r1 = openat$damon_kdamond_pid(0xffffffffffffff9c, &(0x7f0000000180), 0x10200, 0x8) ioctl$SNDRV_TIMER_IOCTL_NEXT_DEVICE(r1, 0xc0145401, &(0x7f00000001c0)={0x2, 0x1, 0x6d, 0x3, 0x10000}) openat$sndtimer(0xffffffffffffff9c, &(0x7f0000000200), 0x40) ioctl$SNDRV_TIMER_IOCTL_PARAMS(r0, 0x40505412, &(0x7f0000000000)={0x1, 0x1, 0xfffffe00, 0x0, 0x3}) r2 = syz_open_procfs(0x0, &(0x7f0000000040)='attr/exec\x00') write$sysctl(r2, 0x0, 0x0) ioctl$SNDRV_TIMER_IOCTL_PARAMS(r2, 0x40505412, &(0x7f0000000240)={0x7, 0x35, 0x3f}) 00:03:01 executing program 5: [ 181.985362][ T26] audit: type=1326 audit(181.910:234): auid=4294967295 uid=0 gid=0 ses=4294967295 subj=_ pid=7205 comm="syz-executor.1" exe="/root/syz-executor.1" sig=0 arch=c00000b7 syscall=98 compat=0 ip=0xffff83c5cee4 code=0x7ffc0000 syz_mount_image$nilfs2(&(0x7f00000000c0), &(0x7f0000000100)='./file0\x00', 0x100000, 0x38, &(0x7f0000000200)=[{&(0x7f0000000880)='\x00', 0x1}, {&(0x7f00000008c0)="1100fbbadd", 0x5, 0x1}, {&(0x7f00000106a0)="010000", 0x3, 0x6}, {&(0x7f0000011720)='/tmp/syz-imagegen3787079791/file0/file0\x00'/64, 0x40, 0x9}, {&(0x7f00000009c0)="020000000000343418010000f498e16897043d98000000003f00000000000000000010000000000004000000000000001000000005000000010000000000000004000000000000000000000000000000e003000000000000781f1f6300000000781f1f6300000000781f1f63000000000100320000000100781f1f6300000000004eed0000000000000000000b00000080002000c00010005745cea941714c61b9841bd4a64c433600"/192, 0xc0, 0x400}, {&(0x7f0000010200)="0200000000000000100001022e0000000200000000000000100002022e2e00000b00000000000000e00306012e6e696c667300"/64, 0x40, 0x1400}, {&(0x7f00000012c0)="f41f000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200098ab8dc400002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000713568942e28999cae2000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000ccff0d2100002000000020000000200000ff0f000000000000000000000000000000000000000000000000000000000000b857bfc0ef7c59073fbea67e3a8b1a4b0e430b1b02d43cddefd3a5e5186c9daad83a4700674b15bc4fd900681f19f6b32e1cb067bd5cd019ee952c231902517f50489e52e1710e00d1bd2aa0631b9d9c073fc0d80be08660ac88627af182fc37da295d455c3ac006650b055f52da71a4782997e92da0a93e82924b281030b3af07eefafb2feb22996b53e044c3f4adc1674d8bbaed211fb0afffaa6383651cfc67979d380bd965c1e119469af2ec455803fef7bc5484341c9b986c58e13c1d5fac5756a49ca168a0035e25f7034751deef40832ef538c98b956c130f1eb4b057556a9e6278094ee44c48ab5193a90ec86cb901cce267e5f3d44c37fef409ab70cc6729e102bebd84fc3cc7963d46a087e06213f426b93b9f210eee3d23d30a75fd58cdcd8ad74867589c32e75119efbde9d54a661c4be42c", 0x561, 0x17ff}, {&(0x7f0000010660)="00000000000000000000000000000000781f1f6300000000781f1f63000000000000000000000000000000000000000000800100"/64, 0x40, 0x2080}, {&(0x7f0000010700)="00000000000000000000000000000000781f1f6300000000781f1f63000000000000000000000000000000000000000000800100"/64, 0x40, 0x2380}, {&(0x7f0000000980)="00000000000000000000000000000000781f1f6300000000781f1f63000000000000000000000000000000000000000000800100"/64, 0x40, 0x2400}, {&(0x7f0000010780)="00000000000000000000000000000000781f1f6300000000781f1f63000000000000000000000000000000000000000000800100"/64, 0x40, 0x2480}, {&(0x7f0000001c40)="00000000000000000000000000000000781f1f6300000000781f1f6300000000000000000000000000000000000000000080010000000000000000000000005b0d71bedc67bfe2aa78246cc880fa60173b9b92105c36da53fafb922ad6e2ed0b79d6f232aed1ab2373296e31685439b91de925fb8c9a8aeefb9e454543004509", 0x80, 0x2500}, {&(0x7f0000010800)="00000000000000000000000000000000781f1f6300000000781f1f630000000000000000000000000000000000000000a4810100"/64, 0x40, 0x2580}, {&(0x7f0000010840)="0100"/32, 0x20, 0x2800}, {&(0x7f0000010860)="0000000000000000000000000000000000000000000000000100000000000000781f1f63000000000c000000000000000200000000000000050000000000000004000000000000000000000000000000781f1f6300000000781f1f63000000000000000000000000000000000000000000800100000000000000000000000000020000000000000003000000000000000400000000000000050000000000000000000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000200000000000000", 0xe0, 0x28c0}, {&(0x7f0000010940)="0200000000000000000000000000000000000000000000000300000000000000", 0x20, 0x2a40}, {&(0x7f0000010960)="0200000000000000000000000000000000000000000000000400000000000000", 0x20, 0x2b00}, {&(0x7f0000010980)="3d0000000000000002000000000000003e000000000000000000000000000000781f1f63000000000c0000000300000000000000000000000000000003000000", 0x40, 0x2c00}, {&(0x7f00000109c0)="f81f0000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000ff00"/1056, 0x420, 0x3000}, {&(0x7f0000000ac0)="05000000000000000100000000000000ffffffffffffffff000000000000000006000000000000000100000000000000fffffffffffbffff000000000000000007000000000000000100000000000000ffffffffffffffff00000000000009000000000000000000010000000000003371f225fab0620b98706919e1da00ffffffffffffffff000000000000000009000000000000000100000000000000ffffffffffffffff00000000000000000a000000000000000100000000000000ffffffffffffffff00000000000000000b000000000000000100000000000000ffffffffffffffff0000000000000000", 0xee, 0x3820}, {&(0x7f0000010ec0)="d102c1e890010000781f1f630000000003000000000000000000000000000000781f1f6300000000781f1f630000000000000000000000000000000000000000008001000000000000000000000000000c000000000000000d000000000000000e000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000781f1f6300000000781f1f630000000000000000000000000000000000000000008001000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000781f1f6300000000781f1f630000000000000000000000000000000000000000008001000000000000000000000000000700"/352, 0x160, 0x3c00}, {&(0x7f0000011020)="652d8fe95cab1d6a11faaf1e400001000100000000000000781f1f630000000020000000000000001000000006000000c00100000000000002000000000000000c0000000000000002000000000000000100000001000000001000000000000000000000000000000200000000000000020000822fc9e631758aeff4441440d7044700000000000100000001000000120000000000000000000000000000000d000000000000000200000000000000020000000200000000140000000000000000000000000000011400000000000001000000000000000e0000000000000002000000000000000100000001000000001800000000000000000000000000000f0000000000000002000000000000000100000001000000001c000000000000000000000000000010000000000000000200000000000000090000000900000008000000000000000000000000000000090000000000000001000000000000000a0000000000000002000000000000000b0000000000000003000000000000000c0000000000000004000000000000000d0000000000000005000000000000000e0000000000000006000000000000001000000000000000070000000000000011", 0x1c0, 0x4000}, {&(0x7f0000001200)="0c00000000000000100001022e0000000200000000000000100002022e2e00000d000000000000001800050166696c6530000000000016000e00000000000000c803050766696c653100"/96, 0x60, 0x4400}, {&(0x7f0000000e40)="0200000000000000100001022e0000000200000000000000100002022e2e00000b00040000000000180006012e6e696c66730000000000000c000000000000001800050266696c6530000000000000000f000000000000001800050166696c65310000000000000010000000000000001800050166696c65320000000000000010000000000000001800050166696c65330000000000000011000000000000006803090166696c652e636f6c64000000000000000000000000000000000000005d93d9db5530385f0783baa04c1f12e30fd570c45fdcc74dd80bee7b9763226b11a6188ab159c9e4798a7e611fb624e9ba470700c4dfd63d5fe2ceff679c8ca5d83d492d7f03c4d0ce83f574f55c402cb2791e7df02ca234f511813cd8af73dae62c22997171926b8bafd7013d77c8aaaaa63fbd385bd13eea3c5558bed24494b99ed957d721d50f6212d6cb487766dded0b732accafb1f82f98b36976e717260996b286e570d4306d100b76e6b6a3517f8bb3190e879582590730adec6106968058b9e2c503d92b", 0x188, 0x4800}, {&(0x7f0000011300)='syzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkal\x00\x00\x00\x00\x00\x00', 0x420, 0x4c00}, {&(0x7f0000011780)="16aae7c8b63c7c0811faaf1e400000000200000000000000781f1f630000000030000000000000001000000006000000880100000000000002000000000000001000000000000000020000000000000001000000000000000f00000000000000110000000000000002000000000000000100000001000000000400000000000000000000000000000600000000000000020000000000000005000000050000001300000000000000000000000000000014000000000000000100000000000000150000000000000002000000000000001600000000000000030000000000000001180000000000000400000000000000040000000000000000000000000000000100000001000000170000000000000000000000000000000500000000000000000000000000000001000000010000001800000000000000000000000000000003000000000000000000000000000000060000000600000000000000000000000100000000000000020000000000000022000000000000008200000000000000a200"/416, 0x1a0, 0x8000}, {&(0x7f0000011980)="0000000000000000080000000000000009000000000000000a000000000000000b000000000000000c000000000000000d000000000000000e0000000000000010000000000000001100"/96, 0x60, 0x8600}, {&(0x7f0000011a60)="ee1f0000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000ffff0300"/1056, 0x420, 0x8c00}, {&(0x7f0000011e80)="00000000000000000000000000000000781f1f6300000000781f1f63000000000000000000000000000000000000000000800100"/64, 0x40, 0x9480}, {&(0x7f0000011ec0)="01000000000000000004000000000000781f1f6300000000781f1f630000000092ddcb2992ddcb290000000000000000ed4103000000000000000000000000001200"/96, 0x60, 0x9500}, {&(0x7f0000001bc0)="00000000000000000000000000000000781f1f6300000000781f1f63000000000000000000000000000000000000000000800100000000000000000000000000bb755ccb35db3f23d2f959c640b3f7e4f89b3e98084087c7d84e05187ba1a4c70bd1d2fa45df73086e0bcab9b39569f71f45460370d5931d172ea6be44eb1b3c", 0x80, 0x9800}, {&(0x7f0000001000)="00000000000000000000000000000000781f1f63000000007851d90000000000008001000000000000000000000000000eb4e95c2a11348f199606f92f622ff79c77471b9eda918b4741aae7087ed6f3627f32e670fa3869a0a1c4186ca188f8b07df844e618c65793a8bf5df733ca8bd529fe78adc1f327a5b560f60838", 0x7e, 0x9882}, {&(0x7f0000000080)="00000000000000000000000000000000781f1f6300000000781f1f63000000000000000000000000000000000000000000800100"/64, 0x40, 0x9900}, {&(0x7f0000012060)="02000000000000000004000000000000781f1f6300000000781f1f630000000092ddcb2992ddcb290000000000000000ed410200000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000080bd9f690000000004000000000000001a04000000000000781f1f6300000000781f1f630000000092ddcb2992ddcb290000000000000000ed810100000000000000000000000000001400000000000001140000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000081bd9f690000000002000000000000002700000000000000781f1f6300000000781f1f630000000092ddcb2992ddcb290000000000000000eda10100000000000000000000000000001800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000082bd9f690000000002000000000000000a00000000000000781f1f6300000000781f1f630000000092ddcb2992ddcb290000000000000000ed810100000000000000000000000000001c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000083bd9f690000000014000000000000002823000000000000781f1f6300000000781f1f630000000092ddcb2992ddcb290000000000000000ed810200000000000102010000000000000000000000000009000000000000000a000000000000000f000000000000000c000000000000000d00000000000000000000000000000084bd9f690000000002000000000000006400000000000000781f1f6300000000781f1f630000000092ddcb2992ddcb290000000000000000ed810100000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000085bd9f6900000000", 0x300, 0x9a00}, {&(0x7f0000012360)="0200"/32, 0x20, 0xa000}, {&(0x7f0000012380)="0000000000000000000000000000000000000000000000000100000000000000781f1f63000000000c000000000000000200000000000000050000000000000004000000000000000000000000000000781f1f6300000000781f1f63000000000000000000000000000000000000000000800100000000000000000000000000020000000000000003000000000000000400000000000000050000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000200000000000000781f1f630000000035000000000000000800000000000000160000000000000006000000000000000000000000000000781f1f6300000000781f1f63000000000000000000000000000000000000000000800100000000000000000000000000130000000000000014000000000000001500000000000000160000000000000001180000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000300000000000000", 0x1a0, 0xa0c0}, {&(0x7f0000012520)="0200000000000000000000000000000000000000000000000400000000000000", 0x20, 0xa300}, {&(0x7f0000012540)="3a00000000000000050000000000000004000000000000000000000000000000781f1f63000000000c00000003000000781f1f63000000001000000003000000781f1f63000000001000000002000000781f1f630000000005000000020000000000000000000000000000000200"/128, 0x80, 0xa400}, {&(0x7f00000125c0)="e01f0000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000002000000020000000200000ffffff0100"/1056, 0x420, 0xa800}, {&(0x7f0000000140)="0100"/32, 0x20, 0xac80}, {&(0x7f0000001140)="0100000000000000000000000000000000000000000000000000000000000000b4f3d68506ba7e98d0ac8900caa2e98e70c40eb8e93c774e727485df6e726b0357c05f0c54ec526304fcc89b006d6f9df3720b868dcb6145a808b75c5461305d07c26be302cbc77b62684f08c02e34035d7d5dc8388600"/128, 0x80, 0xae00}, {&(0x7f0000000d00)="0300000000000000000000000000000000000000c4000000000000000000000011bb9ea46b3fcfd6d68cdf88a1846fb9459fcf5dc67eb9b3e1f2bc1bf6df6fc077cfa74a4bf5ac7eefd5af8f21683e816b94c9db0e31b02dd728f30fed88e56ccdf1013f21ee67403ef470db76a0326a842f625a1f4ef6ff1d25316c6786dc1d", 0x80, 0xae80}, {&(0x7f0000012a40)="0300000000000000000000000000000000000000000000000000000000000400", 0x20, 0xaf00}, {&(0x7f0000000180)="0100"/32, 0x20, 0xaf80}, {&(0x7f0000012a80)="050000000000000001000000000000000200000000000000000000000000000006000000000000000100000000000000020000000000000000000000000000000700000000000000010000000000000002000000000000000000000000000000080000000000000001000000000000000200000000000000000000000000000009000000000000000100000000000000020000000000000000000000000000000a000000000000000100000000000000010000000000000000000000000000000b0000000000000001000000000000000100000000000000000000000000000017000000000000000200000000000000ffffffffffffffff000000000000000018000000000000000200000000000000ffffffffffffffff000000000000000019000000000000000200000000000000ffffffffffffffff00000000000000001a000000000000000200000000000000ffffffffffffffff00000000000000001b000000000000000200000000000000ffffffffffffffff00000000000000001c000000000000000200000000000000ffffffffffffffff00000000000000001d000000000000000200000000000000ffffffffffffffff000000000000000021000000000000000200000000000000ffffffffffffffff00000000000000001e000000000000000200000000000000ffffffffffffffff00000000000000001f000000000000000200000000000000ffffffffffffffff000000000000000012000000000000000200000000000000ffffffffffffffff000000000000000023000000000000000200000000000000ffffffffffffffff000000000000000024000000000000000200000000000000ffffffffffffffff000000000000000025000000000000000200000000000000ffffffffffffffff000000000000000026000000000000000200000000000000ffffffffffffffff000000000000000028000000000000000200000000000000ffffffffffffffff000000000000000029000000000000000200000000000000ffffffffffffffff0000000000000000", 0x300, 0xb020}, {&(0x7f0000001100)="22000000000000000200000000000000ffffffffffffffff0000000000000000", 0x20, 0xb400}, {&(0x7f0000012dc0)="13000000000000000200000000000000ffffffffffffffff000000000000000014000000000000000200000000000000ffffffffffffffff0000000000000000", 0x40, 0xbbfd}, {&(0x7f0000001080)="5a83286cef02cd2211faaf1e400006000300000000000000781f1f63000000004000000000000000050000000100000078000000000000000200000000000000030000000000000000000000000000000300000002000000c200000000000000e20000000000000000000000000000000100"/128, 0x80, 0xc000}, {&(0x7f0000012e80)="15000000000000000200000000000000ffffffffffffffff000000000000000027000000000000000200000000000000ffffffffffffffff0000000000000000", 0x40, 0xc400}, {&(0x7f0000012ec0)="16000000000000000200000000000000ffffffffffffffff0000000000000000", 0x20, 0xc800}, {&(0x7f0000012ee0)="0001080000000000000000000000000000000000000000000100000000000000020000000000000022000000000000008200000000000000a200000000000000c200000000000000e200"/96, 0x60, 0xcc00}, {&(0x7f0000012f40)='\x00\x00\x00\x00\x00\x00\x00\x00*\x00\x00\x00\x00\x00\x00\x00+\x00\x00\x00\x00\x00\x00\x00,\x00\x00\x00\x00\x00\x00\x00-\x00\x00\x00\x00\x00\x00\x00.\x00\x00\x00\x00\x00\x00\x00/\x00\x00\x00\x00\x00\x00\x001\x00\x00\x00\x00\x00\x00\x002\x00'/96, 0x60, 0xce00}, {&(0x7f0000012fa0)="ed336a1f90010000781f1f63000000000f000000000000000000000000000000781f1f6300000000781f1f6300000000000000000000000000000000000000000080010000000000010201000000000000000000000000000d000000000000000e000000000000003300000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000781f1f6300000000781f1f630000000000000000000000000000000000000000008001000000000000000000000000001700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000781f1f6300000000781f1f630000000000000000000000000000000000000000008001000000000000000000000000001800"/352, 0x160, 0xd000}, {&(0x7f0000000040)='syzkallers\x00'/32, 0x20, 0xf4a0}, {&(0x7f0000011920)="000109000000000000000000000000000000000000000000010000ecffffff000200000000000000030000000000000004000000000000000500000000000000060000000000000007000000004000000800"/96, 0x60, 0x18400}, {&(0x7f00000007c0)="020000000000343418010000f498e168cdbf9e50000000003f00000000000000000010000000000004000000000000001000000005000000020000000000000030000000000000000300000000000000a003000000000000781f1f6300000000781f1f6300000000781f1f63000000000100320001000100781f1f6300000000004eed0000000000000000000b00000080002000c00010005745cea941714c61b9841bd4a64c433600"/192, 0xc0, 0xff000}], 0x0, &(0x7f0000001840)=ANY=[@ANYBLOB="001f4c0e96634721fa0641d80ae80934dd515774df6bd6e8ac83bb453caa956ceb4e72e49239bc83dd9c189e0f6332ce6042e5e5e84340678e533d81a4cb03a0ff84205a9dc6b04afdd36916c4937ffd20701a2227317c118ba2ef40cb0aaf4c2a3c9c7ad66dcc643e090000001f10b0fee5fb6016d5ad90f6a06b6df6880e34e1378a94af2a8fc7e0651a99ddb26db13fb8b8b63bf0e1ead9f07e9b56808ebf95684a2efab363308ad65e95e1fb6bd7bae280631961c3138da9b14ba50d3463a0a3c785d0363634fbe20b1677d20b2e67e71ec49457cb86151c31f6afe2abcc4067ded509001dec1e5bf678e5e55d19495f9894e5d0d7dc592e6689568b82cf3c826abab6b9193c1b7ed2288f2a9e9b7b86d0e10e8a12d9d1fa9d66913f7c23541c6eef4233ccaeb4d125685b9b7892810d4a50ac7bd623f5c732a01f696ba259612e2d1e5e4b15c078f0604195a7ff786b9154f0a89fb66df6d73760de85cf07776a83608875e7558373d5f30000000000000058198bb377da9ec83cbc10c0c8f5da5d441a7b75171eced6eb8a3015aed8b7453c5a508f8178c340af33f4d0ff0355a15c4cd11237e272eaa73e2cdbc9830a39c6d1f64b7794ffb4a2edf27cb075e48317f7066e2bf6214d56dcd60c9f86133efc598f5f5b8208e8cae13bb09855f52bda911845b5788cc006863699ad01c2513636b05d1695e5f0082b379dba535ef60dfa85861b39f8da826b40d19a24f8d000004b964046fefe094bd7867756e36349576f1d9e16ff5f867ad512cbd1de6db400000000000076521fcf5ce8566e87cd3c95167353e600941d9a40769d280ec46b525d83b3ac10341f55dd60ef5c216373afd347137a51e48f4d3a06afc1f3799c2d75e6e9d7c6de33127351542662555a59b0100ea8710222dd9749a63b902dc55ccaf3e7cd416ffadf65bb211d8d75ff9108adebd18bd6ba74136fec4795731842025cd65425c52eba2759d901b1c6023ea5bb6f70d4d3770e23ba08efc22a15a55ba4d32c3361fad480cd13a47e94394aa9cedc5e863b80ece95af6e7975f638b5e8c0955e5f8fe012461b0f8ac11db05a3e2dc1e5ce91df2a6f66bbdc26886ba152ec3e1ed5b7738426fba0617a38e93359c67428f3f78392231b2b551f59f62cf44"], 0xff) (async) truncate(&(0x7f0000000a80)='./file2\x00', 0x2) r0 = openat$proc_capi20ncci(0xffffffffffffff9c, &(0x7f0000000000), 0x400, 0x0) sendmsg$IPCTNL_MSG_TIMEOUT_DEFAULT_GET(r0, &(0x7f0000000900)={&(0x7f00000001c0)={0x10, 0x0, 0x0, 0x40000000}, 0xc, &(0x7f0000000780)={&(0x7f0000000740)={0x24, 0x4, 0x8, 0x801, 0x0, 0x0, {0x7, 0x0, 0x7}, [@CTA_TIMEOUT_L3PROTO={0x6, 0x2, 0x1, 0x0, 0x18ee}, @CTA_TIMEOUT_L4PROTO={0x5, 0x3, 0x2f}]}, 0x24}}, 0x48191) 00:03:01 executing program 0: r0 = openat$sndtimer(0xffffffffffffff9c, &(0x7f0000002a80), 0x0) ioctl$SNDRV_TIMER_IOCTL_GINFO(r0, 0xc0f85403, &(0x7f0000000080)={{0x3, 0x0, 0x0, 0x0, 0x5}, 0x0, 0x0, 'id1\x00', 'timer0\x00'}) r1 = openat$damon_kdamond_pid(0xffffffffffffff9c, &(0x7f0000000180), 0x10200, 0x8) ioctl$SNDRV_TIMER_IOCTL_NEXT_DEVICE(r1, 0xc0145401, &(0x7f00000001c0)={0x2, 0x1, 0x6d, 0x3, 0x10000}) openat$sndtimer(0xffffffffffffff9c, &(0x7f0000000200), 0x40) ioctl$SNDRV_TIMER_IOCTL_PARAMS(r0, 0x40505412, &(0x7f0000000000)={0x1, 0x1, 0xfffffe00, 0x0, 0x3}) r2 = syz_open_procfs(0x0, &(0x7f0000000040)='attr/exec\x00') write$sysctl(r2, 0x0, 0x0) ioctl$SNDRV_TIMER_IOCTL_PARAMS(r2, 0x40505412, &(0x7f0000000240)={0x7, 0x35, 0x3f}) [ 182.004262][ T26] audit: type=1326 audit(181.920:235): auid=4294967295 uid=0 gid=0 ses=4294967295 subj=_ pid=7205 comm="syz-executor.1" exe="/root/syz-executor.1" sig=0 arch=c00000b7 syscall=16 compat=0 ip=0xffff83c5cee4 code=0x7ffc0000 [ 182.010649][ T7230] loop5: detected capacity change from 0 to 2048 [ 182.044813][ T7232] NILFS (loop5): segctord starting. Construction interval = 5 seconds, CP frequency < 30 seconds 00:03:02 executing program 4: r0 = openat$sndtimer(0xffffffffffffff9c, &(0x7f0000002a80), 0x0) ioctl$SNDRV_TIMER_IOCTL_GINFO(r0, 0xc0f85403, &(0x7f0000000080)={{0x3, 0x0, 0x0, 0x0, 0x5}, 0x0, 0x0, 'id1\x00', 'timer0\x00'}) r1 = openat$damon_kdamond_pid(0xffffffffffffff9c, &(0x7f0000000180), 0x10200, 0x8) ioctl$SNDRV_TIMER_IOCTL_NEXT_DEVICE(r1, 0xc0145401, &(0x7f00000001c0)={0x2, 0x1, 0x6d, 0x3, 0x10000}) openat$sndtimer(0xffffffffffffff9c, &(0x7f0000000200), 0x40) ioctl$SNDRV_TIMER_IOCTL_PARAMS(r0, 0x40505412, &(0x7f0000000000)={0x1, 0x1, 0xfffffe00, 0x0, 0x3}) r2 = syz_open_procfs(0x0, &(0x7f0000000040)='attr/exec\x00') write$sysctl(r2, 0x0, 0x0) ioctl$SNDRV_TIMER_IOCTL_PARAMS(r2, 0x40505412, &(0x7f0000000240)={0x7, 0x35, 0x3f}) 00:03:02 executing program 1: r0 = openat$sndtimer(0xffffffffffffff9c, &(0x7f0000002a80), 0x0) ioctl$SNDRV_TIMER_IOCTL_GINFO(r0, 0xc0f85403, &(0x7f0000000080)={{0x3, 0x0, 0x0, 0x0, 0x5}, 0x0, 0x0, 'id1\x00', 'timer0\x00'}) r1 = openat$damon_kdamond_pid(0xffffffffffffff9c, &(0x7f0000000180), 0x10200, 0x8) ioctl$SNDRV_TIMER_IOCTL_NEXT_DEVICE(r1, 0xc0145401, &(0x7f00000001c0)={0x2, 0x1, 0x6d, 0x3, 0x10000}) openat$sndtimer(0xffffffffffffff9c, &(0x7f0000000200), 0x40) ioctl$SNDRV_TIMER_IOCTL_PARAMS(r0, 0x40505412, &(0x7f0000000000)={0x1, 0x1, 0xfffffe00, 0x0, 0x3}) r2 = syz_open_procfs(0x0, &(0x7f0000000040)='attr/exec\x00') write$sysctl(r2, 0x0, 0x0) ioctl$SNDRV_TIMER_IOCTL_PARAMS(r2, 0x40505412, &(0x7f0000000240)={0x7, 0x35, 0x3f}) 00:03:02 executing program 0: r0 = openat$sndtimer(0xffffffffffffff9c, &(0x7f0000002a80), 0x0) ioctl$SNDRV_TIMER_IOCTL_GINFO(r0, 0xc0f85403, &(0x7f0000000080)={{0x3, 0x0, 0x0, 0x0, 0x5}, 0x0, 0x0, 'id1\x00', 'timer0\x00'}) r1 = openat$damon_kdamond_pid(0xffffffffffffff9c, &(0x7f0000000180), 0x10200, 0x8) ioctl$SNDRV_TIMER_IOCTL_NEXT_DEVICE(r1, 0xc0145401, &(0x7f00000001c0)={0x2, 0x1, 0x6d, 0x3, 0x10000}) openat$sndtimer(0xffffffffffffff9c, &(0x7f0000000200), 0x40) ioctl$SNDRV_TIMER_IOCTL_PARAMS(r0, 0x40505412, &(0x7f0000000000)={0x1, 0x1, 0xfffffe00, 0x0, 0x3}) r2 = syz_open_procfs(0x0, &(0x7f0000000040)='attr/exec\x00') write$sysctl(r2, 0x0, 0x0) ioctl$SNDRV_TIMER_IOCTL_PARAMS(r2, 0x40505412, &(0x7f0000000240)={0x7, 0x35, 0x3f}) 00:03:02 executing program 3: r0 = socket$inet_tcp(0x2, 0x1, 0x0) bind$inet(r0, &(0x7f0000000100)={0x2, 0x4e20, @multicast2}, 0x62) setsockopt$inet_tcp_TCP_CONGESTION(r0, 0x6, 0xd, &(0x7f00000000c0)='htcp\x00', 0x5) setsockopt$inet_tcp_int(r0, 0x6, 0x2, &(0x7f0000000080)=0x2803, 0x4) r1 = openat(0xffffffffffffffff, 0x0, 0x0, 0x0) r2 = syz_open_procfs(0x0, &(0x7f0000000040)='attr/exec\x00') write$sysctl(r2, 0x0, 0x0) r3 = syz_open_procfs(0x0, &(0x7f0000000040)='attr/exec\x00') write$sysctl(r3, 0x0, 0x0) sendfile(r2, r3, &(0x7f0000000000)=0x6, 0x2) setsockopt$SO_ATTACH_FILTER(r0, 0x1, 0x1a, &(0x7f0000000300)={0x1, &(0x7f00000001c0)=[{0x6, 0x0, 0x0, 0x3654}]}, 0x10) connect$inet(r0, &(0x7f0000000180)={0x2, 0x4e20, @loopback}, 0x10) sendfile(r0, r1, 0x0, 0x101000011) recvmsg(r0, &(0x7f0000000580)={0x0, 0x41, &(0x7f0000000500)=[{&(0x7f0000000740)=""/4084, 0xfffffe1f}], 0x6, 0x0, 0xfffffffffffffcc9}, 0x700) 00:03:02 executing program 5: r0 = openat$sndtimer(0xffffffffffffff9c, &(0x7f0000002a80), 0x0) ioctl$SNDRV_TIMER_IOCTL_GINFO(r0, 0xc0f85403, &(0x7f0000000080)={{0x3, 0x0, 0x0, 0x0, 0x5}, 0x0, 0x0, 'id1\x00', 'timer0\x00'}) r1 = openat$damon_kdamond_pid(0xffffffffffffff9c, &(0x7f0000000180), 0x10200, 0x8) ioctl$SNDRV_TIMER_IOCTL_NEXT_DEVICE(r1, 0xc0145401, &(0x7f00000001c0)={0x2, 0x1, 0x6d, 0x3, 0x10000}) openat$sndtimer(0xffffffffffffff9c, &(0x7f0000000200), 0x40) ioctl$SNDRV_TIMER_IOCTL_PARAMS(r0, 0x40505412, &(0x7f0000000000)={0x1, 0x1, 0xfffffe00, 0x0, 0x3}) r2 = syz_open_procfs(0x0, &(0x7f0000000040)='attr/exec\x00') write$sysctl(r2, 0x0, 0x0) ioctl$SNDRV_TIMER_IOCTL_PARAMS(r2, 0x40505412, &(0x7f0000000240)={0x7, 0x35, 0x3f}) 00:03:02 executing program 0: r0 = openat$sndtimer(0xffffffffffffff9c, &(0x7f0000002a80), 0x0) ioctl$SNDRV_TIMER_IOCTL_GINFO(r0, 0xc0f85403, &(0x7f0000000080)={{0x3, 0x0, 0x0, 0x0, 0x5}, 0x0, 0x0, 'id1\x00', 'timer0\x00'}) r1 = openat$damon_kdamond_pid(0xffffffffffffff9c, &(0x7f0000000180), 0x10200, 0x8) ioctl$SNDRV_TIMER_IOCTL_NEXT_DEVICE(r1, 0xc0145401, &(0x7f00000001c0)={0x2, 0x1, 0x6d, 0x3, 0x10000}) openat$sndtimer(0xffffffffffffff9c, &(0x7f0000000200), 0x40) ioctl$SNDRV_TIMER_IOCTL_PARAMS(r0, 0x40505412, &(0x7f0000000000)={0x1, 0x1, 0xfffffe00, 0x0, 0x3}) r2 = syz_open_procfs(0x0, &(0x7f0000000040)='attr/exec\x00') write$sysctl(r2, 0x0, 0x0) 00:03:02 executing program 4: r0 = openat$sndtimer(0xffffffffffffff9c, &(0x7f0000002a80), 0x0) ioctl$SNDRV_TIMER_IOCTL_GINFO(r0, 0xc0f85403, &(0x7f0000000080)={{0x3, 0x0, 0x0, 0x0, 0x5}, 0x0, 0x0, 'id1\x00', 'timer0\x00'}) r1 = openat$damon_kdamond_pid(0xffffffffffffff9c, &(0x7f0000000180), 0x10200, 0x8) ioctl$SNDRV_TIMER_IOCTL_NEXT_DEVICE(r1, 0xc0145401, &(0x7f00000001c0)={0x2, 0x1, 0x6d, 0x3, 0x10000}) openat$sndtimer(0xffffffffffffff9c, &(0x7f0000000200), 0x40) ioctl$SNDRV_TIMER_IOCTL_PARAMS(r0, 0x40505412, &(0x7f0000000000)={0x1, 0x1, 0xfffffe00, 0x0, 0x3}) r2 = syz_open_procfs(0x0, &(0x7f0000000040)='attr/exec\x00') write$sysctl(r2, 0x0, 0x0) ioctl$SNDRV_TIMER_IOCTL_PARAMS(r2, 0x40505412, &(0x7f0000000240)={0x7, 0x35, 0x3f}) 00:03:02 executing program 1: r0 = openat$sndtimer(0xffffffffffffff9c, &(0x7f0000002a80), 0x0) ioctl$SNDRV_TIMER_IOCTL_GINFO(r0, 0xc0f85403, &(0x7f0000000080)={{0x3, 0x0, 0x0, 0x0, 0x5}, 0x0, 0x0, 'id1\x00', 'timer0\x00'}) r1 = openat$damon_kdamond_pid(0xffffffffffffff9c, &(0x7f0000000180), 0x10200, 0x8) ioctl$SNDRV_TIMER_IOCTL_NEXT_DEVICE(r1, 0xc0145401, &(0x7f00000001c0)={0x2, 0x1, 0x6d, 0x3, 0x10000}) openat$sndtimer(0xffffffffffffff9c, &(0x7f0000000200), 0x40) ioctl$SNDRV_TIMER_IOCTL_PARAMS(r0, 0x40505412, &(0x7f0000000000)={0x1, 0x1, 0xfffffe00, 0x0, 0x3}) r2 = syz_open_procfs(0x0, &(0x7f0000000040)='attr/exec\x00') write$sysctl(r2, 0x0, 0x0) 00:03:02 executing program 5: r0 = openat$sndtimer(0xffffffffffffff9c, &(0x7f0000002a80), 0x0) ioctl$SNDRV_TIMER_IOCTL_GINFO(r0, 0xc0f85403, &(0x7f0000000080)={{0x3, 0x0, 0x0, 0x0, 0x5}, 0x0, 0x0, 'id1\x00', 'timer0\x00'}) r1 = openat$damon_kdamond_pid(0xffffffffffffff9c, &(0x7f0000000180), 0x10200, 0x8) ioctl$SNDRV_TIMER_IOCTL_NEXT_DEVICE(r1, 0xc0145401, &(0x7f00000001c0)={0x2, 0x1, 0x6d, 0x3, 0x10000}) openat$sndtimer(0xffffffffffffff9c, &(0x7f0000000200), 0x40) ioctl$SNDRV_TIMER_IOCTL_PARAMS(r0, 0x40505412, &(0x7f0000000000)={0x1, 0x1, 0xfffffe00, 0x0, 0x3}) r2 = syz_open_procfs(0x0, &(0x7f0000000040)='attr/exec\x00') write$sysctl(r2, 0x0, 0x0) ioctl$SNDRV_TIMER_IOCTL_PARAMS(r2, 0x40505412, &(0x7f0000000240)={0x7, 0x35, 0x3f}) 00:03:02 executing program 1: r0 = openat$sndtimer(0xffffffffffffff9c, &(0x7f0000002a80), 0x0) ioctl$SNDRV_TIMER_IOCTL_GINFO(r0, 0xc0f85403, &(0x7f0000000080)={{0x3, 0x0, 0x0, 0x0, 0x5}, 0x0, 0x0, 'id1\x00', 'timer0\x00'}) r1 = openat$damon_kdamond_pid(0xffffffffffffff9c, &(0x7f0000000180), 0x10200, 0x8) ioctl$SNDRV_TIMER_IOCTL_NEXT_DEVICE(r1, 0xc0145401, &(0x7f00000001c0)={0x2, 0x1, 0x6d, 0x3, 0x10000}) openat$sndtimer(0xffffffffffffff9c, &(0x7f0000000200), 0x40) ioctl$SNDRV_TIMER_IOCTL_PARAMS(r0, 0x40505412, &(0x7f0000000000)={0x1, 0x1, 0xfffffe00, 0x0, 0x3}) syz_open_procfs(0x0, &(0x7f0000000040)='attr/exec\x00') 00:03:02 executing program 4: r0 = socket$inet_tcp(0x2, 0x1, 0x0) bind$inet(r0, &(0x7f0000000100)={0x2, 0x4e20, @multicast2}, 0x62) setsockopt$inet_tcp_TCP_CONGESTION(r0, 0x6, 0xd, &(0x7f00000000c0)='htcp\x00', 0x5) setsockopt$inet_tcp_int(r0, 0x6, 0x2, &(0x7f0000000080)=0x2803, 0x4) r1 = openat(0xffffffffffffffff, 0x0, 0x0, 0x0) r2 = syz_open_procfs(0x0, &(0x7f0000000040)='attr/exec\x00') write$sysctl(r2, 0x0, 0x0) r3 = syz_open_procfs(0x0, &(0x7f0000000040)='attr/exec\x00') write$sysctl(r3, 0x0, 0x0) sendfile(r2, r3, &(0x7f0000000000)=0x6, 0x2) setsockopt$SO_ATTACH_FILTER(r0, 0x1, 0x1a, &(0x7f0000000300)={0x1, &(0x7f00000001c0)=[{0x6, 0x0, 0x0, 0x3654}]}, 0x10) connect$inet(r0, &(0x7f0000000180)={0x2, 0x4e20, @loopback}, 0x10) sendfile(r0, r1, 0x0, 0x101000011) recvmsg(r0, &(0x7f0000000580)={0x0, 0x41, &(0x7f0000000500)=[{&(0x7f0000000740)=""/4084, 0xfffffe1f}], 0x6, 0x0, 0xfffffffffffffcc9}, 0x700) 00:03:02 executing program 5: r0 = openat$sndtimer(0xffffffffffffff9c, &(0x7f0000002a80), 0x0) ioctl$SNDRV_TIMER_IOCTL_GINFO(r0, 0xc0f85403, &(0x7f0000000080)={{0x3, 0x0, 0x0, 0x0, 0x5}, 0x0, 0x0, 'id1\x00', 'timer0\x00'}) r1 = openat$damon_kdamond_pid(0xffffffffffffff9c, &(0x7f0000000180), 0x10200, 0x8) ioctl$SNDRV_TIMER_IOCTL_NEXT_DEVICE(r1, 0xc0145401, &(0x7f00000001c0)={0x2, 0x1, 0x6d, 0x3, 0x10000}) openat$sndtimer(0xffffffffffffff9c, &(0x7f0000000200), 0x40) ioctl$SNDRV_TIMER_IOCTL_PARAMS(r0, 0x40505412, &(0x7f0000000000)={0x1, 0x1, 0xfffffe00, 0x0, 0x3}) r2 = syz_open_procfs(0x0, &(0x7f0000000040)='attr/exec\x00') write$sysctl(r2, 0x0, 0x0) ioctl$SNDRV_TIMER_IOCTL_PARAMS(r2, 0x40505412, &(0x7f0000000240)={0x7, 0x35, 0x3f}) 00:03:02 executing program 0: r0 = openat$sndtimer(0xffffffffffffff9c, &(0x7f0000002a80), 0x0) ioctl$SNDRV_TIMER_IOCTL_GINFO(r0, 0xc0f85403, &(0x7f0000000080)={{0x3, 0x0, 0x0, 0x0, 0x5}, 0x0, 0x0, 'id1\x00', 'timer0\x00'}) r1 = openat$damon_kdamond_pid(0xffffffffffffff9c, &(0x7f0000000180), 0x10200, 0x8) ioctl$SNDRV_TIMER_IOCTL_NEXT_DEVICE(r1, 0xc0145401, &(0x7f00000001c0)={0x2, 0x1, 0x6d, 0x3, 0x10000}) openat$sndtimer(0xffffffffffffff9c, &(0x7f0000000200), 0x40) ioctl$SNDRV_TIMER_IOCTL_PARAMS(r0, 0x40505412, &(0x7f0000000000)={0x1, 0x1, 0xfffffe00, 0x0, 0x3}) syz_open_procfs(0x0, &(0x7f0000000040)='attr/exec\x00') 00:03:02 executing program 1: r0 = openat$sndtimer(0xffffffffffffff9c, &(0x7f0000002a80), 0x0) ioctl$SNDRV_TIMER_IOCTL_GINFO(r0, 0xc0f85403, &(0x7f0000000080)={{0x3, 0x0, 0x0, 0x0, 0x5}, 0x0, 0x0, 'id1\x00', 'timer0\x00'}) r1 = openat$damon_kdamond_pid(0xffffffffffffff9c, &(0x7f0000000180), 0x10200, 0x8) ioctl$SNDRV_TIMER_IOCTL_NEXT_DEVICE(r1, 0xc0145401, &(0x7f00000001c0)={0x2, 0x1, 0x6d, 0x3, 0x10000}) openat$sndtimer(0xffffffffffffff9c, &(0x7f0000000200), 0x40) syz_open_procfs(0x0, &(0x7f0000000040)='attr/exec\x00') 00:03:02 executing program 5: r0 = openat$sndtimer(0xffffffffffffff9c, &(0x7f0000002a80), 0x0) ioctl$SNDRV_TIMER_IOCTL_GINFO(r0, 0xc0f85403, &(0x7f0000000080)={{0x3, 0x0, 0x0, 0x0, 0x5}, 0x0, 0x0, 'id1\x00', 'timer0\x00'}) r1 = openat$damon_kdamond_pid(0xffffffffffffff9c, &(0x7f0000000180), 0x10200, 0x8) ioctl$SNDRV_TIMER_IOCTL_NEXT_DEVICE(r1, 0xc0145401, &(0x7f00000001c0)={0x2, 0x1, 0x6d, 0x3, 0x10000}) openat$sndtimer(0xffffffffffffff9c, &(0x7f0000000200), 0x40) ioctl$SNDRV_TIMER_IOCTL_PARAMS(r0, 0x40505412, &(0x7f0000000000)={0x1, 0x1, 0xfffffe00, 0x0, 0x3}) r2 = syz_open_procfs(0x0, &(0x7f0000000040)='attr/exec\x00') write$sysctl(r2, 0x0, 0x0) 00:03:03 executing program 3: r0 = socket$inet_tcp(0x2, 0x1, 0x0) bind$inet(r0, &(0x7f0000000100)={0x2, 0x4e20, @multicast2}, 0x62) setsockopt$inet_tcp_TCP_CONGESTION(r0, 0x6, 0xd, &(0x7f00000000c0)='htcp\x00', 0x5) setsockopt$inet_tcp_int(r0, 0x6, 0x2, &(0x7f0000000080)=0x2803, 0x4) r1 = openat(0xffffffffffffffff, 0x0, 0x0, 0x0) r2 = syz_open_procfs(0x0, &(0x7f0000000040)='attr/exec\x00') write$sysctl(r2, 0x0, 0x0) r3 = syz_open_procfs(0x0, &(0x7f0000000040)='attr/exec\x00') write$sysctl(r3, 0x0, 0x0) sendfile(r2, r3, &(0x7f0000000000)=0x6, 0x2) setsockopt$SO_ATTAC